External Services

Create new external service

Changed on

Create a managed external service. The parameters object is service-type-specific. Read get_service_type_parameters for the chosen service_type immediately before creating the service and provide every field that schema marks as required. Set project_id to create and link the service in one approval-gated operation.

post/external-services

Request

  • Base URL: /api (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /api/external-services
  • Auth: none declared

Request body

namestring required
node_idinteger nullable

Target node ID for the service. Omit or null to run on the control plane.

parametersobject required

Service-type-specific configuration. Read GET /external-services/types/{service_type}/parameters before creating a service and provide every field its schema marks as required. Secret values that the schema describes as auto-generated may be omitted.

project_idinteger nullable

Optionally link the new service to this project as part of the same request. The caller must have write access to the target project. If linking fails, Temps removes the newly created service so callers do not have to recover an ambiguous half-created resource.

service_type'mariadb' | 'mongodb' | 'postgres' | 'redis' | 's3' | 'kv' | 'blob' | 'rustfs' required
topologystring

Service topology: "standalone" (default) or "cluster" (HA multi-member).

versionstring nullable

Example request

{
  "members": [
    {
      "role": "primary"
    }
  ],
  "topology": "standalone"
}

Response

Service created successfully

connection_infostring nullable
continuous_archive_pinned_atstring nullable

When continuous_archive_s3_source_id was last set. Null alongside a non-null source id means it was set by the original provisioning flow rather than an explicit repoint.

continuous_archive_s3_source_idinteger nullable

S3 source ID that this service's continuous archiving (Postgres/ Timescale WAL-G archive_command, or MariaDB's binlog shipper) currently writes to. Null for service types with no continuous archiving concept, or a Postgres/MariaDB service that has never had one provisioned. Change it with repoint_continuous_archive_source.

created_atstring required
error_messagestring nullable

Error message from failed initialization.

idinteger required
metrics_enabledboolean

Whether metric collection is enabled for this service. The UI uses this to decide whether to poll the monitoring endpoints.

namestring required
node_idinteger nullable

Node ID where the service runs. Null means control plane (local).

service_type'mariadb' | 'mongodb' | 'postgres' | 'redis' | 's3' | 'kv' | 'blob' | 'rustfs' | 'minio' required
statusstring required
topologystring required

Service topology: "standalone" (single container) or "cluster" (HA multi-member).

updated_atstring required
versionstring nullable

Example response

{
  "topology": "standalone"
}

Changes