Roku External Control Protocol (ECP)
The External Control Protocol (ECP) is an HTTP-based API exposed on port 8060 of every Roku device on the local network. It enables third-party applications, mobile remote-control apps, automated test systems, and home-automation hubs to discover devices via SSDP, inject simulated remote-control key presses, launch installed apps with deep-link parameters, query device state, and retrieve developer-mode diagnostics.
Documentation
Documentation
https://developer.roku.com/docs/developer-program/dev-tools/external-control-api.md
APIReference
https://developer.roku.com/docs/developer-program/dev-tools/external-control-api.md
Specifications
OpenAPI
openapi/roku-external-control-protocol.yaml
JSON-LD
json-ld/roku-external-control-protocol-context.jsonld
Schemas & Data
JSONSchema
json-schema/external-control-protocol-active-app-schema.json
JSONSchema
json-schema/external-control-protocol-app-list-schema.json
JSONSchema
json-schema/external-control-protocol-app-schema.json
JSONSchema
json-schema/external-control-protocol-device-info-schema.json
JSONSchema
json-schema/external-control-protocol-media-player-schema.json
JSONStructure
json-structure/external-control-protocol-device-info-structure.json
JSONStructure
json-structure/external-control-protocol-app-structure.json
JSONStructure
json-structure/external-control-protocol-app-list-structure.json
JSONStructure
json-structure/external-control-protocol-active-app-structure.json
JSONStructure
json-structure/external-control-protocol-media-player-structure.json
Examples
Example
examples/external-control-protocol-query-device-info-example.json
Example
examples/external-control-protocol-query-apps-example.json
Example
examples/external-control-protocol-launch-app-example.json
OpenAPI
#REST
#HTTP
#Device Control
#LAN