ChangeVault
API Reference

Services

List, create, and retrieve services via the API.

List services

GET /api/services

Returns all services in your organization, ordered by name.

Example

curl https://app.changevault.dev/api/services \
  -H "x-api-key: cvk_prod_••••••••"

Response

{
  "data": [
    {
      "id": "uuid",
      "name": "api-service",
      "description": "Main API backend",
      "color": "#6366f1",
      "organization_id": "org_...",
      "created_at": "2025-04-01T08:00:00Z"
    }
  ]
}

Get a service

GET /api/services/:id

Example

curl https://app.changevault.dev/api/services/uuid \
  -H "x-api-key: cvk_prod_••••••••"

Response

{
  "data": {
    "id": "uuid",
    "name": "api-service",
    "description": "Main API backend",
    "color": "#6366f1",
    "organization_id": "org_...",
    "created_at": "2025-04-01T08:00:00Z"
  }
}

Create a service

POST /api/services

Request body

FieldTypeRequiredDescription
namestringService name (2–100 chars)
descriptionstringOptional description
colorstringHex color, e.g. #6366f1 (default: #6366f1)

Example

curl -X POST https://app.changevault.dev/api/services \
  -H "x-api-key: cvk_prod_••••••••" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "payments-service",
    "description": "Handles all payment processing",
    "color": "#22c55e"
  }'

Response

{
  "data": {
    "id": "uuid",
    "name": "payments-service",
    "description": "Handles all payment processing",
    "color": "#22c55e",
    "organization_id": "org_...",
    "created_at": "2025-04-07T12:00:00Z"
  }
}

Returns 409 Conflict if a service with the same name already exists.

On this page