Services are auto-scaling HTTP endpoints with load balancing, health checks, custom domains, and scale-to-zero. Read operations use /{'{namespace}'}/services, write operations go through /auth/v1/seed/.
List services GET `/{namespace}/services`
Retrieve all services in a namespace.
Path parameters namespace
type: string
required The namespace (user or organization) to list services for.
Query parameters Filter by status. One of `deploying`, `running`, `degraded`, `stopped`, `failed`.
Page number for pagination.
Number of results per page. Maximum `100`.
Request Response 200 Get a service GET `/{namespace}/service/{name}`
Retrieve details for a single service, including current scaling state and deployment information.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name (e.g., `llama-3-serving`).
Request Response 200 Get service logs GET `/{namespace}/service/{name}/logs`
Retrieve logs for a service.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name.
Query parameters Number of most recent log lines to return. Maximum `10000`.
Return logs after this ISO 8601 timestamp. For example, `2026-03-18T12:00:00Z`.
Request Response 200 Get service analytics GET `/{namespace}/service/{name}/analytics`
Retrieve analytics and metrics for a service.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name.
Request Response 200 Create a service POST `/auth/v1/seed/{namespace}/services`
Deploy a new production service from a repository or container image.
Path parameters namespace
type: string
required The namespace (user or organization) to deploy the service in.
Body parameters name
type: string
required A unique name for the service within the namespace. Allowed characters: alphanumeric, hyphens, underscores.
Full repository name (namespace/repo) to deploy from. Either `repo` or `image` is required.
Container image to deploy. Either `repo` or `image` is required.
Branch to deploy when using `repo`. Pushes to this branch trigger automatic redeployments.
gpu
type: string
required GPU type for each replica. One of `A100-40GB`, `A100-80GB`, `H100-80GB`, `L4`, `T4`, `none`.
Number of GPUs per replica. Must be `1`, `2`, `4`, or `8`.
Number of vCPUs per replica. One of `2`, `4`, `8`, `16`, `32`, `64`.
Memory per replica in gigabytes.
min_replicas
type: integer
Minimum number of replicas. Set to `0` to enable scale-to-zero.
max_replicas
type: integer
Maximum number of replicas for autoscaling.
target_gpu_utilization
type: integer
Target GPU utilization percentage for autoscaling. Range: `10` to `95`.
Port the service listens on inside the container.
health_check_path
type: string
HTTP path for health checks. The service must return a 200 on this path.
Environment variables as key-value pairs.
Deployment region. One of `us-east-1`, `us-west-2`, `eu-west-1`, `eu-central-1`, `ap-northeast-1`.
custom_domain
type: string
Custom domain to route traffic to this service. You must configure a CNAME record pointing to your service endpoint.
Request Response 201 You can also deploy a service from a container image using an API key:
Update a service PUT `/auth/v1/seed/{namespace}/services/{name}`
Update the configuration and autoscaling parameters for a running service.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name.
Body parameters min_replicas
type: integer
Minimum number of replicas. Set to `0` to enable scale-to-zero.
max_replicas
type: integer
Maximum number of replicas.
target_gpu_utilization
type: integer
Target GPU utilization percentage for autoscaling. Range: `10` to `95`.
Replace all environment variables with the provided key-value pairs. Triggers a rolling redeployment.
Change the deployment branch. Triggers an immediate redeployment from the new branch.
custom_domain
type: string
Set or update a custom domain. Pass `null` to remove.
Request Response 200 Updating environment variables Updating env triggers a rolling redeployment. The old replicas continue serving traffic until new ones are healthy.
Redeploy a service POST `/auth/v1/seed/{namespace}/services/{name}/redeploy`
Force a redeployment of the service using the latest commit on the configured branch.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name.
Request Response 200 Delete a service DELETE `/auth/v1/seed/{namespace}/services/{name}`
Delete a service and terminate all running replicas. Traffic to the service endpoint will immediately return 503.
Path parameters namespace
type: string
required The namespace (user or organization) the service belongs to.
name
type: string
required The service name.
Query parameters Skip the graceful drain period and terminate replicas immediately.
Request Response 204 Returns an empty response body on success.
Error responses All service endpoints may return the following errors:
Status Description 400 Bad request -- invalid parameters or configuration 401 Unauthorized -- missing or invalid credentials 403 Forbidden -- insufficient permissions 404 Not found -- service does not exist 409 Conflict -- service is in an incompatible state (e.g., already deploying) 422 Unprocessable entity -- invalid configuration combination 429 Rate limit exceeded 500 Internal server error -- Seed orchestration failure