API
Complete reference for the Bindplane REST API.
The Bindplane API provides programmatic access to all Bindplane functionality. This documentation covers all available endpoints organized by resource type.
Authentication
All API requests require authentication using an API key. Include your API key in the X-Bindplane-Api-Key
header:
curl -H "X-Bindplane-Api-Key: your-api-key" https://app.bindplane.com/v1/endpoint
Base URL
Cloud:
https://app.bindplane.com
Self-hosted:
https://your-bindplane-instance.com
Swagger
OpenAPI:
https://app.bindplane.com/swagger/index.html
API Endpoints
Accounts
List Accounts -
GET /v1/accounts
Get Account by ID -
GET /v1/accounts/{id}
Create Account -
POST /v1/accounts
Update Account -
PATCH /v1/accounts
Update Current Account -
PATCH /v1/accounts/current
Delete Account -
DELETE /v1/accounts/{id}
Agent Types
List Agent Types -
GET /v1/agent-types
Get Agent Type by Name -
GET /v1/agent-type/{name}
Delete Agent Type -
DELETE /v1/agent-types/{name}
Agent Versions
List Agent Versions -
GET /v1/agent-versions
Get Agent Version by Name -
GET /v1/agent-version/{name}
Get Install Command -
GET /v1/agent-versions/{type}/{version}/install-command
Sync Agent Version -
POST /v1/agent-versions/{type}/{version}/sync
Delete Agent Version -
DELETE /v1/agent-version/{name}
Agents
List Agents -
GET /v1/agents
Get Agent by ID -
GET /v1/agents/{id}
Get Agent Configuration -
GET /v1/agents/{id}/configuration
Get Agent Labels -
GET /v1/agents/{id}/labels
Update Agent Labels -
PATCH /v1/agents/{id}/labels
Update Agent Version -
POST /v1/agents/{id}/version
Disconnect Agent -
POST /v1/agents/{id}/disconnect
Update Agent Labels (Bulk) -
PATCH /v1/agents/labels
Update Agent Version (Bulk) -
PATCH /v1/agents/version
Delete Agents -
DELETE /v1/agents
Audit Events
List Audit Events -
GET /v1/audit-events
Download Audit Events -
GET /v1/audit-events/download
Available Components
List Available Components -
GET /v1/available-components
Get Available Component by Hash -
GET /v1/available-components/{hash}
Configurations
List Configurations -
GET /v1/configurations
Get Configuration by Name -
GET /v1/configurations/{name}
Copy Configuration -
POST /v1/configurations/{name}/copy
Revert Configuration -
PUT /v1/configurations/{name}/revert
Delete Configuration -
DELETE /v1/configurations/{name}
Destination Types
List Destination Types -
GET /v1/destination-types
Get Destination Type by Name -
GET /v1/destination-types/{name}
Delete Destination Type -
DELETE /v1/destination-types/{name}
Destinations
List Destinations -
GET /v1/destinations
Get Destination by Name -
GET /v1/destinations/{name}
Delete Destination -
DELETE /v1/destinations/{name}
Extension Types
List Extension Types -
GET /v1/extension-types
Get Extension Type by Name -
GET /v1/extension-types/{name}
Delete Extension Type -
DELETE /v1/extension-types/{name}
Extensions
List Extensions -
GET /v1/extensions
Get Extension by Name -
GET /v1/extensions/{name}
Delete Extension -
DELETE /v1/extensions/{name}
Fleets
List Fleets -
GET /v1/fleets
Organizations
List Organizations -
GET /v1/organizations
Create Organization -
POST /v1/organizations
Get Organization by Name -
GET /v1/organizations/{name}
Update Organization Metadata -
PATCH /v1/organizations/{id}/metadata
Delete Organization -
DELETE /v1/organizations/{id}
Get Organization Accounts -
GET /v1/organizations/accounts
Get All Organization Accounts -
GET /v1/organizations/accounts/all
Get Organization Projects -
GET /v1/organizations/projects
Get All Organization Projects -
GET /v1/organizations/projects/all
Get Organization Users -
GET /v1/organizations/users
Verify Organization -
PUT /v1/organizations/verify
Update Organization License -
PUT /v1/organizations/:id/license
Processor Types
List Processor Types -
GET /v1/processor-types
Get Processor Type by Name -
GET /v1/processor-types/{name}
Delete Processor Type -
DELETE /v1/processor-types/{name}
Processors
List Processors -
GET /v1/processors
Get Processor by Name -
GET /v1/processors/{name}
Delete Processor -
DELETE /v1/processors/{name}
Projects
List Projects -
GET /v1/projects
Create Project -
POST /v1/projects
Get Project by ID -
GET /v1/projects/{id}
Update Project -
PATCH /v1/projects
Update Current Project -
PATCH /v1/projects/current
Update Project Next Login -
PATCH /v1/projects/next-login
Delete Project -
DELETE /v1/projects/{id}
Recommendation Types
List Recommendation Types -
GET /v1/recommendation-types
Get Recommendation Type by Name -
GET /v1/recommendation-types/{name}
Delete Recommendation Type -
DELETE /v1/recommendation-types/{name}
Resources
List Resources by Kind -
GET /v1/resources/{kind}
Get Resource by Kind and Name -
GET /v1/resources/{kind}/{name}
Delete Resource -
DELETE /v1/resources/{kind}/{name}
Rollouts
List Rollouts -
GET /v1/rollouts
Create Rollout -
POST /v1/rollouts
Get Rollout by Name -
GET /v1/rollouts/{name}
Get Rollout Status -
GET /v1/rollouts/{name}/status
Start Rollout -
POST /v1/rollouts/{name}/start
Update Rollout -
POST /v1/rollouts/{name}/update
Pause Rollout -
PUT /v1/rollouts/{name}/pause
Resume Rollout -
PUT /v1/rollouts/{name}/resume
Secret Keys
List Secret Keys -
GET /v1/secret-keys
Create Secret Key -
POST /v1/secret-keys
Set Default Secret Key -
POST /v1/secret-keys/{key}/default
Delete Secret Key -
DELETE /v1/secret-keys/{key}
Source Types
List Source Types -
GET /v1/source-types
Get Source Type by Name -
GET /v1/source-types/{name}
Delete Source Type -
DELETE /v1/source-types/{name}
Sources
List Sources -
GET /v1/sources
Get Source by Name -
GET /v1/sources/{name}
Delete Source -
DELETE /v1/sources/{name}
Users
List Users -
GET /v1/users
Create User -
POST /v1/users
Get User by ID -
GET /v1/users/{id}
Delete User -
DELETE /v1/users/{id}
System
Get Version -
GET /v1/version
Accept EULA -
PUT /v1/accept-eula
Apply Changes -
POST /v1/apply
Delete Resources -
POST /v1/delete
Get Resource History -
GET /v1/{kind}/{name}/history
Update System License Key -
PUT /v1/system/v1/license-key
Update Organization License -
PUT /v1/organization-license
Create Offline Agent Version -
POST /v1/offline-agent-version/{version}
Stream Offline Agent Version -
POST /v1/offline-agent-version/{version}/stream
Response Format
All API responses are returned in JSON format. Successful responses typically return a 200 status code with the requested data.
Error Handling
The API uses standard HTTP status codes to indicate success or failure:
200 OK
- Request successful201 Created
- Resource created successfully400 Bad Request
- Invalid request parameters401 Unauthorized
- Missing or invalid API key403 Forbidden
- Insufficient permissions404 Not Found
- Resource not found500 Internal Server Error
- Server error
Error responses include a JSON object with error details:
{
"error": "Error message",
"code": "ERROR_CODE"
}
Rate Limiting
API requests are subject to rate limiting. If you exceed the rate limit, you'll receive a 429
status code. Implement exponential backoff in your applications to handle rate limiting gracefully.
Last updated
Was this helpful?