译者 | 明知山
策划 | 丁晓昀
特斯拉最近发布了首个 API 文档,用于支持第三方应用程序的集成。尽管这些 API 主要是为车队管理而设计的,但已经引起了开发人员的兴趣,他们将其视为应用程序生态系统的发展起点。
应用程序可以使用新的 API 请求车主的许可来查看帐户信息,获取车辆状态并发出远程命令。车主可以随时更改这些设置,以保持对应用程序的控制。
多年来一直在使用逆向工程的 API,即使特斯拉在过去曾讨论过推出软件开发工具包和创建第三方应用程序生态系统,但仍然没有一个官方的解决方案。Electrek 主编 Frédéric Lambert 在报道中写道:
这一举措很可能与特斯拉最近与 Hertz 合作发布的新车队管理和租赁软件有关 (...) 这个项目很可能需要正式的 API 访问,因此也向所有人提供了这一选项。这是一个好消息,因为曾经有一些公司专门为特斯拉开发第三方应用程序而生,但他们在法律上存在一些不确定性。现在,如果这些应用程序可以使用官方 API,那么这些公司将成为合法的企业,可能会鼓励更多人加入。
文档包含了这些 API 端点:充电端点、合作伙伴端点、用户端点、车辆端点和车辆命令,提供了 cURL、JavaScript、Python 和 Ruby 请求示例。例如,下面的 curl 请求用于执行可以导航到指定坐标位置的 navigation_gps_request 命令:
代码语言:javascript复制curl --header 'Content-Type: application/json'
--header "Authorization: Bearer $TESLA_API_TOKEN"
--data '{"lat":45.65292317088107,"lon":13.765238974015045,"order":"integer"}'
'https://fleet-api.prd.na.vn.cloud.tesla.com/api/1/vehicles/{id}/command/navigation_gps_request'
梅赛德斯奔驰互联汽车战略师 Mark Gerban表示:
我很好奇这是否可以为开发人员带来收入,因为如果他们想要获得关注,吸引更大的参与者,就需要提供相应的回报。
从 Hacker News 的一个讨论帖可以看到许多开发人员为此感到兴奋,但图形和计算机视觉工程师 James Darpinian 警告说:
多年来,通过逆向特斯拉官方应用程序 API 已经可以获得几乎所有这些特性 (...) 不同之处在于这次特斯拉正在为第三方提供一份新的官方 API,并包含了官方文档、身份验证和需要注册的开发者计划(未来可能需要付费)。可以推测,一旦 SDK 最终确定下来,他们将开始打击使用旧逆向工程 API 的应用程序。
今年早些时候,特斯拉推出了 Fleet Telemetry,这是特斯拉遥测协议的服务器参考实现。该服务允许开发人员直接连接到他们的车辆,处理设备连接并接收和存储传输的数据。设备通过建立 WebSocket 连接来推送遥测记录,Fleet Telemetry 则向客户端提供确认、错误或速率限制响应。
要获取 API 密钥并与 API 端点发生交互,开发人员必须创建特斯拉帐户并请求获得批准。