Skip to content

Experimental automation API

The versioned pilot surface is under /api/v1/; its deployed schema is available at /api/v1/openapi.json. It is not yet a stable SDK. On gateways with the one-API update, Workspace uses the same public operations with its session and CSRF proof; POST requests also require the exact Origin. Bearer callers must send neither cookies nor Origin. Accepted credentials and scopes vary by operation; consult the deployed schema. Existing application grants retain capability 1: scientific reads and application operations, not project administration or uploads. Capability-3 grants add project discovery (/api/v1/projects/list, /api/v1/projects/organizations) and the project’s data reads, and no new writes (see Application API).

Legacy browser /api/... and /rpc/... aliases carry Deprecation and Sunset headers. Their announced sunset is 31 March 2027; migrate using the public schema. Browser login/session and delegate issuance remain separate authentication routes.

A Project Developer credential delegates read, optional import and optional compute actions for one project. It never adds permissions. It expires within five minutes or when its parent session/access ends. Requests use Authorization: Bearer and bounded application/json, without browser cookies or an Origin header. Never put credentials in query strings, shared logs or shell arguments.

Platform’s cli/ophiolite.py supports login, logout, assets, inspect, history, import-geotiff and export. Login reads the credential from standard input and stores it in a private configuration file. Use exact revision strings when inspecting/exporting. GeoTIFF import takes an explicit unit, name and command ID; retain the same ID and body on retry. Export writes a raster plus manifest and source evidence to a new directory.

Read endpoints are /api/v1/projects/{project}/read/{method}, using the native protobuf JSON contract. Map operations are /maps/import, /maps/operate and /maps/export. Request, route and credential project must match. Publication and built-in calculations use the same policy and durable command journal as Workspace. History uses limit and before_revision; asset listing remains bounded rather than generally paginated. CLI project creation, service accounts, device login and watch commands are not included in this increment.

Errors include HTTP status plus code such as INVALID_ARGUMENT, UNAUTHENTICATED, PERMISSION_DENIED, NOT_FOUND, ABORTED, ALREADY_EXISTS or UNAVAILABLE. After a lost publication response, repeat the original command. Renewing a credential does not mean generating another publication command.

See Workspace steps and scientific scope.

For local curve applications, browser-authorized access avoids copying delegates. That separate bounded route family does not change the general CLI above or authorize provider tokens for every automation endpoint.