API Documentation
Configure8 API documentation
The Configure8 API is based on REST architecture style. Our API uses standard HTTP verbs, codes and authentication.
Configure8 API is protected by API keys. In order to use our API, you need to set up a key with appropriate scopes and role. You can refer to the API keys management section in our documentation to check out more detailed information.
Please make sure that you are not exposing your API keys. Keep them secure and do not share them publicly!
Configure8 API keys start with
c8ak
prefix, so they support secret scanning (i. e. Github secret scanning) to help you to avoid exposing API keys.Authentication is performed via
Api-Key
Header. All API calls must be authenticated and made over HTTPS.curl https://app.configure8.io/public/v1/catalog/entities \
--header "Api-Key: my_api_key"
As for errors, Configure8 API uses standard HTTP status codes. Below you see the most common status codes and possible reasons.
Status code | Description |
---|---|
2xx | OK |
400 | Bad request. Possible reason - malformed request (i.e. body, params). |
401 | Unauthorised. The API key is invalid or was not provided. |
403 | Forbidden. The does not have enough permissions to perform this operation. |
404 | Not found. Requested entity is not found. |
409 | Conflict. Usually caused by duplicating names in resources, incorrect template usage on entity creation etc. |
422 | Unprocessable entity. The request syntax is correct, but there is a business logic error from the client's side. |
5xx | Configure8 internal server error. |
Endpoints that return multiple items (e. g.
/public/v1/catalog/entities
) contain pagination for more convenient usage. It is based on such properties: pageNumber
, pageSize
and sort
.Property | Default | Description |
---|---|---|
pageNumber | 0 | Page to return. Offset to return is calculated based on pageNumber * pageSize |
pageSize | 20 | Number of items to return |
sort | Sorted by name in ascending order | Sorting of items is defined by this structure:
{
property: 'propertyToSortOn',
order: 'ASC' | 'DESC'
} |
post
/public/v1/catalog/entities
Get catalog entities filtered by query.
get
/public/v1/catalog/entities/{id}
Get a catalog entity by id.
delete
/public/v1/catalog/entities/{id}
Delete the specified catalog entity
NB: Only meta tags and tags can be updated for discovery created resources
patch
/public/v1/catalog/entities/resource/{id}
Update a resource catalog entity
post
/public/v1/catalog/entities/person
Create a new person catalog entity
patch
/public/v1/catalog/entities/person/{id}
Update a person catalog entity
post
/public/v1/catalog/entities/service
Create a new service catalog entity
patch
/public/v1/catalog/entities/service/{id}
Update a service catalog entity
post
/public/v1/catalog/entities/environment
Create a new environment catalog entity
patch
/public/v1/catalog/entities/environment/{id}
Update an environment catalog entity
post
/public/v1/catalog/entities/system
Create a new system catalog entity
patch
/public/v1/catalog/entities/system/{id}
Update a system catalog entity
post
/public/v1/catalog/entities/application
Create a new application catalog entity
patch
/public/v1/catalog/entities/application/{id}
Update an application catalog entity
post
/public/v1/catalog/entities/repository
Create an new repository catalog entity
patch
/public/v1/catalog/entities/repository/{id}
Update a repository catalog entity
post
/public/v1/catalog/entities/library
Create a new library catalog entity
patch
/public/v1/catalog/entities/library/{id}
Update a library catalog entity
post
/public/v1/catalog/entities/manifest
Create a new manifest catalog entity
patch
/public/v1/catalog/entities/manifest/{id}
Update a manifest catalog entity
NB: create/delete relations between discovery created resources are forbidden
post
/public/v1/catalog/relations
Create relation between catalog entities.
NB: Resource-Resource relations are available only for non-discovery created resources.
delete
/public/v1/catalog/relations
Delete catalog entity relation.
get
/public/v1/catalog/metadata/{id}
Get catalog entity's metadata id.
put
/public/v1/catalog/metadata/{id}
Update catalog entity's metadata by id.
get
/public/v1/templates
Get all the templates available.
Last modified 1mo ago