ChangeVault
API Reference

Changes

List, create, and retrieve infrastructure changes via the API.

List changes

GET /api/changes

Query parameters

ParameterTypeDescription
pageintegerPage number (default: 1)
per_pageintegerResults per page, max 100 (default: 25)
qstringFull-text search on title
service_iduuidFilter by service
risk_levelstringlow, medium or high
statusstringplanned, in_progress, completed or rolled_back

Example

curl "https://app.changevault.dev/api/changes?status=completed&per_page=10" \
  -H "x-api-key: cvk_prod_••••••••"

Response

{
  "data": [...],
  "count": 42,
  "page": 1,
  "per_page": 10,
  "total_pages": 5
}

Get a change

GET /api/changes/:id

Example

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

Response

{
  "data": {
    "id": "uuid",
    "title": "Deployed api-service v3.1.0",
    "description": null,
    "risk_level": "medium",
    "status": "completed",
    "service": { "id": "uuid", "name": "api-service", "color": "#6366f1" },
    "host_ref": { "id": "uuid", "hostname": "web-01", "environment": "prod" },
    "tags": ["deploy", "prod"],
    "scheduled_for": null,
    "created_at": "2025-04-07T10:00:00Z",
    "organization_id": "org_..."
  }
}

Create a change

POST /api/changes

Creating changes via the API requires the Pro plan or higher.

Request body

FieldTypeRequiredDescription
titlestringShort description of the change (3–300 chars)
descriptionstringDetailed description
service_iduuidAssociate with a service
host_iduuidAssociate with a host
risk_levelstringlow (default), medium or high
statusstringplanned (default), in_progress, completed, rolled_back
impactstringExpected impact description
tagsstring[]Up to 20 tags
scheduled_forISO 8601When the change is scheduled

Example

curl -X POST https://app.changevault.dev/api/changes \
  -H "x-api-key: cvk_prod_••••••••" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Deployed api-service v3.1.0",
    "risk_level": "medium",
    "status": "completed",
    "tags": ["deploy", "api", "prod"]
  }'

Response

{
  "data": {
    "id": "uuid",
    "title": "Deployed api-service v3.1.0",
    "risk_level": "medium",
    "status": "completed",
    "organization_id": "org_...",
    "created_at": "2025-04-07T10:00:00Z"
  }
}

On this page