Components
List components
The response behavior depends on the filter:
- Filter by
application_idonly: returns application-level component definitions (defaults). - Filter by
application_id+environment_id: returns the resolved view with environment overrides applied. Disabled components are included withdisabled=true. Thehas_overridefield indicates whether the component differs from its application-level default.
Scope: app:read
Authorization
bearerAuth AuthorizationBearer <token>
Personal Access Token (PAT) or Service Access Token (SAT). Pass the token in the Authorization header: Bearer adm_pat_...
In: header
Query Parameters
filter?filter
Filter expression using the PEG filter DSL.
Common filter fields:
application_id-- scope to an application (required for meaningful results since components always belong to an application).environment_id-- when present, triggers the resolved view with environment overrides applied to each component.category-- filter by component category (INFRASTRUCTURE, WORKLOAD).name-- filter by component name.
Length
length <= 1024page_size?page_size
Maximum number of components to return per page.
Format
int32Range
0 <= value <= 100page_token?page_token
Opaque pagination token from a previous response.
Response Body
application/json
curl -X GET "https://admiral.example.com/api/v1/components"{ "components": [ { "id": "d4e5f6a7-8901-2bcd-ef34-567890123456", "application_id": "a1b2c3d4-5678-9abc-def0-1234567890ab", "name": "api-server", "description": "Main API server deployed via Helm chart.", "category": "COMPONENT_CATEGORY_WORKLOAD", "source_id": "f6a7b8c9-0123-4def-5678-901234567890", "version": "2.4.1", "values_template": "{\"replicaCount\": \"{{ .var.REPLICA_COUNT }}\", \"image.tag\": \"{{ .var.IMAGE_TAG }}\"}", "labels": { "component-type": "service" }, "depends_on": [ "vpc", "redis" ], "created_by": "d290f1ee-6c54-4b01-90e6-d701748f0851", "updated_by": "d290f1ee-6c54-4b01-90e6-d701748f0851", "created_at": "2025-09-16T09:00:00Z", "updated_at": "2025-10-28T11:30:00Z" } ], "next_page_token": "string"}List component overrides GET
Scope: `env:read`
Set a component override PUT
For example, a "redis" component might use a Helm chart source in dev but a Terraform ElastiCache module in prod. This is an upsert -- if an override already exists for this component + environment combination, it is replaced. Scope: `env:write`