Control Plane API
The Control Plane API manages the Agent Gateway: agent registration and lifecycle, operating profiles, audit exchanges, state and blob retrieval, project trust and membership evidence, plugin publishing and configuration, and configuration validation rules.
- Version
- 1.2.1
- Base URL
https://<host>/api
Authentication
ApiKeyAuth· API key in header "Authorization" — Type "Bearer" followed by a space and a Guardian Platform API key. Project-scoped routes and registration tokens check the key's scopes and project binding. Per-agent routes accept a key bound to no project that has empty scopes or full access, which acts as its holder, or a scope for what the route does: submit_agent_assessments reads an agent (its detail, configurations, state history and the files a state references, definitions, tools and operating profile, as its assessments rest on), view_agent_certifications reads its certifications, and manage_programs or review_agent_assessments attach a certification. A state's raw snapshot and findings, its audit exchanges and plugin events, and saving its operating profile take full access. A scope counts only while the key's holder still holds that permission in the key's organization, which auth-service reports as keyHeldScopes. A key never acts as an admin, so its holder's binding to the agent still decides.BearerAuth· API key in header "Authorization" — Type "Bearer" followed by a space and a sign-in token: a Guardian Platform JWT, or an OIDC ID token in a standalone deployment.
Health
- getHealth check
/health
Registration
- postCreate registration token
/v1/agent-registration-tokens
Agents
- getList agents
/v1/agents - postCreate agent
/v1/agents - getGet agent
/v1/agents/{agentId} - deleteDeregister agent
/v1/agents/{agentId} - patchUpdate agent
/v1/agents/{agentId} - getList an agent's certifications
/v1/agents/{agentId}/certifications - postAttach a certification to an agent
/v1/agents/{agentId}/certifications - deleteDeregister agent (deprecated alias)
/v1/agents/{agentId}/deregister - postAdd agent key
/v1/agents/{agentId}/keys - deleteRemove agent key
/v1/agents/{agentId}/keys/{did} - getGet an agent's operating profile
/v1/agents/{agentId}/profile - putSave an agent's operating profile
/v1/agents/{agentId}/profile - postCheck an operating profile against the agent
/v1/agents/{agentId}/profile/check - getDraft an agent's operating profile
/v1/agents/{agentId}/profile/draft - getList an agent's operating profile versions
/v1/agents/{agentId}/profile/versions - getGet a version of an agent's operating profile
/v1/agents/{agentId}/profile/versions/{cid} - postRestore agent
/v1/agents/{agentId}/restore - postRevoke agent
/v1/agents/{agentId}/revoke - getList agent status events
/v1/agents/{agentId}/status-events - getGet an agent's tool inventory
/v1/agents/{agentId}/tools - postAdd agent user binding
/v1/agents/{agentId}/users - deleteRemove agent user binding
/v1/agents/{agentId}/users/{externalSubject}
Audit
- getList agent audit exchanges
/v1/agents/{agentId}/audit-exchanges - getGet audit exchange
/v1/agents/{agentId}/audit-exchanges/{exchangeId} - getList audit exchange hook events
/v1/agents/{agentId}/audit-exchanges/{exchangeId}/hook-events - getGet audit exchange body
/v1/agents/{agentId}/audit-exchanges/{exchangeId}/request-body - getGet audit exchange body
/v1/agents/{agentId}/audit-exchanges/{exchangeId}/response-body - getGet audit exchange timeseries
/v1/agents/{agentId}/audit-exchanges/timeseries - getList agent plugin events
/v1/agents/{agentId}/plugin-events
State
- getGet an agent configuration snapshot
/v1/agents/{agentId}/configuration-snapshot - getList an agent's configurations
/v1/agents/{agentId}/configurations - getList a custom agent's definition versions
/v1/agents/{agentId}/definitions - getList the states of a custom agent's definition
/v1/agents/{agentId}/definitions/{definitionCid}/states - getList agent state CIDs
/v1/agents/{agentId}/state-cids - getGet agent state blob
/v1/agents/{agentId}/state-cids/{stateCID}/blob - getGet referenced blob
/v1/agents/{agentId}/state-cids/{stateCID}/blobs/{cid} - getGet state CID findings
/v1/agents/{agentId}/state-cids/{stateCID}/findings
Authentication
- getGet device auth config
/v1/auth/device-config - getGet current user
/v1/me
Plugin Configurations
- getList plugin configurations
/v1/plugin-configurations - postCreate plugin configuration
/v1/plugin-configurations - getGet plugin configuration
/v1/plugin-configurations/{configurationId} - postActivate plugin configuration
/v1/plugin-configurations/{configurationId}/activate - getGet current plugin configuration
/v1/plugin-configurations/current
Plugins
- postUpload plugin artifact
/v1/plugins/artifacts - getGet plugin artifact
/v1/plugins/artifacts/{artifactId} - postGet plugin artifact upload URL
/v1/plugins/artifacts/upload-url - getList plugin definitions
/v1/plugins/definitions - postCreate plugin definition
/v1/plugins/definitions - getGet plugin definition
/v1/plugins/definitions/{definitionId} - patchUpdate plugin definition
/v1/plugins/definitions/{definitionId} - getList plugin secrets
/v1/plugins/secrets - postStore plugin secret
/v1/plugins/secrets - deleteDelete plugin secret
/v1/plugins/secrets/{pluginId}/{name}
Projects
- getList projects
/v1/projects
Project Agents
- getList project agents
/v1/projects/{project_uuid}/agents - getGet project agent
/v1/projects/{project_uuid}/agents/{agent_id}
Project Agent Runtime
- getList project agent audit exchanges
/v1/projects/{project_uuid}/agents/{agent_id}/audit-exchanges - getGet project agent audit exchange
/v1/projects/{project_uuid}/agents/{agent_id}/audit-exchanges/{exchange_id} - getGet project agent audit request or response body
/v1/projects/{project_uuid}/agents/{agent_id}/audit-exchanges/{exchange_id}/request-body - getGet project agent audit request or response body
/v1/projects/{project_uuid}/agents/{agent_id}/audit-exchanges/{exchange_id}/response-body - getGet project agent audit timeseries
/v1/projects/{project_uuid}/agents/{agent_id}/audit-exchanges/timeseries - getGet a project agent's configuration snapshot
/v1/projects/{project_uuid}/agents/{agent_id}/configuration-snapshot - getList a project agent's configurations
/v1/projects/{project_uuid}/agents/{agent_id}/configurations - getList project agent synced credentials
/v1/projects/{project_uuid}/agents/{agent_id}/credentials - getGet a synced credential's raw blob
/v1/projects/{project_uuid}/agents/{agent_id}/credentials/{cid}/blob - getList a project agent's definition versions
/v1/projects/{project_uuid}/agents/{agent_id}/definitions - getList the states of a project agent's definition
/v1/projects/{project_uuid}/agents/{agent_id}/definitions/{definition_cid}/states - getList project-safe agent plugin events
/v1/projects/{project_uuid}/agents/{agent_id}/plugin-events - getList project agent state CIDs
/v1/projects/{project_uuid}/agents/{agent_id}/state-cids - getGet project agent state blob
/v1/projects/{project_uuid}/agents/{agent_id}/state-cids/{state_cid}/blob - getGet a state-referenced project agent blob
/v1/projects/{project_uuid}/agents/{agent_id}/state-cids/{state_cid}/blobs/{cid}
Project Memberships
- getList project membership evidence
/v1/projects/{project_uuid}/memberships - postSubmit project membership evidence
/v1/projects/{project_uuid}/memberships
Project Plugin Configurations
- getList project plugin configurations
/v1/projects/{project_uuid}/plugin-configurations - postCreate project plugin configuration
/v1/projects/{project_uuid}/plugin-configurations - postActivate project plugin configuration
/v1/projects/{project_uuid}/plugin-configurations/{configurationId}/activate - getGet effective project plugin configuration
/v1/projects/{project_uuid}/plugin-configurations/current - getResolve plugin definitions for a project
/v1/projects/{project_uuid}/plugin-configurations/definitions - postRoll back project plugin configuration
/v1/projects/{project_uuid}/plugin-configurations/rollback - postValidate project plugin configuration
/v1/projects/{project_uuid}/plugin-configurations/validate
Project Trust
- getList project trust evidence
/v1/projects/{project_uuid}/trust - postSubmit project trust evidence
/v1/projects/{project_uuid}/trust
Validation Rules
- getList validation rules
/v1/settings/validation-rules - postCreate validation rule
/v1/settings/validation-rules - deleteDelete validation rule
/v1/settings/validation-rules/{ruleKey} - patchUpdate validation rule
/v1/settings/validation-rules/{ruleKey} - postReset validation rules
/v1/settings/validation-rules/reset
Users
- getList users
/v1/users - patchUpdate user
/v1/users/{id}
VirusTotal Scans
- getGet VirusTotal scan results
/v1/vt-scans - postLook up VirusTotal scan results
/v1/vt-scans