CZERTAINLY Entity Provider API (2.13.1)
Download OpenAPI specification:Download
REST API for implementations of custom Entity Provider
Connector Information API. Each connector may have multiple functions represented by FunctionGroupCode. For each FunctionGroupCode there is a list of implemented end points. These endpoints must be according the specified interface, this is validated by the core. You can also implement helper end points that are used for callbacks and other relevant operations specific to implementation.
List supported functions of the connector
Returns map of functional code and implemented end points
Responses
Response samples
- 200
- 400
- 404
[- {
- "functionGroupCode": "credentialProvider",
- "kinds": [
- "SoftKeyStore",
- "Basic",
- "ApiKey"
], - "endPoints": [
- {
- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "context": "/v1",
- "method": "POST",
- "required": true
}
]
}
]
Connector Health check API. Connector returns own status and in some cases can return status of services on which it depends like database, HSM and so on.
Interfaces to control certificates and key stores on Entities. Locations provides capabilities of getting the certificates already on the Entity, pushing new certificates, generation of new key pair and certificate signing requests, removing certificates and management of the Entity end-to-end automation.
Get Location Details
Get information about the Location content. All identified certificates are returned
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
required | Array of objects (RequestAttributeDto) List of Location Attributes | ||||||||
Array
|
Responses
Request samples
- Payload
{- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Response samples
- 200
- 400
- 404
{- "certificates": [
- {
- "certificateData": "string",
- "metadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
], - "certificateType": "X.509",
- "withKey": true,
- "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
], - "csrAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
}
], - "metadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
], - "multipleEntries": false,
- "supportKeyManagement": false
}
Remove Certificate
Remove Certificate from Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
required | Array of objects (MetadataAttribute) Metadata of the Certificate |
required | Array of objects (RequestAttributeDto) List of Location Attributes |
Responses
Request samples
- Payload
{- "certificateMetadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
], - "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Response samples
- 200
- 400
- 404
{- "certificateMetadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
]
}
Push Certificate
Push the Certificate into the Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
certificate required | string Base64-encoded Certificate |
certificateType | string (CertificateType) Default: "X509" Enum: "X.509" "SSH" Type of the Certificate |
required | Array of objects (RequestAttributeDto) List of Location Attributes |
required | Array of objects (RequestAttributeDto) List of Attributes to push Certificate |
Responses
Request samples
- Payload
{- "certificate": "string",
- "certificateType": "X.509",
- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
], - "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Response samples
- 200
- 400
- 404
{- "certificateMetadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
], - "withKey": true
}
Validate Push Certificate Attributes
Validate list of Attributes to push Certificate into Location
path Parameters
entityUuid required | string Entity Instance UUID |
Request Body schema: application/jsonrequired
uuid required | string UUID of the Attribute |
name required | string Name of the Attribute |
contentType required | string (AttributeContentType) Enum: "string" "text" "integer" "boolean" "float" "date" "time" "datetime" "secret" "file" "credential" "codeblock" "object" Type of the attribute content. |
required | Array of BooleanAttributeContent (object) or CodeBlockAttributeContent (object) or CredentialAttributeContent (object) or DateAttributeContent (object) or DateTimeAttributeContent (object) or FileAttributeContent (object) or FloatAttributeContent (object) or IntegerAttributeContent (object) or ObjectAttributeContent (object) or SecretAttributeContent (object) or StringAttributeContent (object) or TextAttributeContent (object) or TimeAttributeContent (object) (BaseAttributeContentDto) Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
Generate CSR
Generate key pair and CSR for the Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
required | Array of objects (RequestAttributeDto) List of Location Attributes |
required | Array of objects (RequestAttributeDto) List of Attributes to generate CSR |
renewal required | boolean Is the request for renewal of Certificate |
Responses
Request samples
- Payload
{- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
], - "csrAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
], - "renewal": true
}
Response samples
- 200
- 400
- 404
{- "csr": "string",
- "metadata": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "type": "data",
- "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "global": false,
- "overwrite": false
}
}
], - "certificateType": "X.509",
- "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Validate CSR Attributes
Validate list of Attributes to generate key pair and CSR
path Parameters
entityUuid required | string Entity Instance UUID |
Request Body schema: application/jsonrequired
uuid required | string UUID of the Attribute |
name required | string Name of the Attribute |
contentType required | string (AttributeContentType) Enum: "string" "text" "integer" "boolean" "float" "date" "time" "datetime" "secret" "file" "credential" "codeblock" "object" Type of the attribute content. |
required | Array of BooleanAttributeContent (object) or CodeBlockAttributeContent (object) or CredentialAttributeContent (object) or DateAttributeContent (object) or DateTimeAttributeContent (object) or FileAttributeContent (object) or FloatAttributeContent (object) or IntegerAttributeContent (object) or ObjectAttributeContent (object) or SecretAttributeContent (object) or StringAttributeContent (object) or TextAttributeContent (object) or TimeAttributeContent (object) (BaseAttributeContentDto) Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
List Push Certificate Attributes
List of Attributes to push Certificate into Location
path Parameters
entityUuid required | string Entity instance UUID |
Responses
Response samples
- 200
- 400
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
List CSR Attributes
List of Attributes to generate key pair and CSR
path Parameters
entityUuid required | string Entity instance UUID |
Responses
Response samples
- 200
- 400
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
Connector Attributes API. Provides information about supported Attributes of the connector. Attributes are specific to implementation and gives information about the data that can be exchanged and properly parsed by the connector. Part of this API is validation of the Attributes.
Validate Attributes
path Parameters
kind required | string Kind |
Request Body schema: application/jsonrequired
uuid required | string UUID of the Attribute |
name required | string Name of the Attribute |
contentType required | string (AttributeContentType) Enum: "string" "text" "integer" "boolean" "float" "date" "time" "datetime" "secret" "file" "credential" "codeblock" "object" Type of the attribute content. |
required | Array of BooleanAttributeContent (object) or CodeBlockAttributeContent (object) or CredentialAttributeContent (object) or DateAttributeContent (object) or DateTimeAttributeContent (object) or FileAttributeContent (object) or FloatAttributeContent (object) or IntegerAttributeContent (object) or ObjectAttributeContent (object) or SecretAttributeContent (object) or StringAttributeContent (object) or TextAttributeContent (object) or TimeAttributeContent (object) (BaseAttributeContentDto) Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
Response samples
- 400
- 404
- 422
{- "message": "Error message"
}
Response samples
- 200
- 400
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
Management interfaces to control Entities in the platform. Entities can be created, edited, removed. Support for the bulk operation and listing of available Entities for the automation. Location attributes and validation.
Response samples
- 200
- 400
- 404
{- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
}
Update Entity instance
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
name required | string Entity instance name |
kind required | string Kind of Entity instance |
required | Array of objects (RequestAttributeDto) List of Entity instance Attributes |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "string",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Response samples
- 200
- 400
- 404
{- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
}
Response samples
- 200
- 400
- 404
[- {
- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
}
]
Create Entity instance
Request Body schema: application/jsonrequired
name required | string Entity instance name |
kind required | string Kind of Entity instance |
required | Array of objects (RequestAttributeDto) List of Entity instance Attributes |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "string",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
Response samples
- 200
- 400
- 404
- 422
{- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]
}
Validate Location Attributes
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/jsonrequired
uuid required | string UUID of the Attribute |
name required | string Name of the Attribute |
contentType required | string (AttributeContentType) Enum: "string" "text" "integer" "boolean" "float" "date" "time" "datetime" "secret" "file" "credential" "codeblock" "object" Type of the attribute content. |
required | Array of BooleanAttributeContent (object) or CodeBlockAttributeContent (object) or CredentialAttributeContent (object) or DateAttributeContent (object) or DateTimeAttributeContent (object) or FileAttributeContent (object) or FloatAttributeContent (object) or IntegerAttributeContent (object) or ObjectAttributeContent (object) or SecretAttributeContent (object) or StringAttributeContent (object) or TextAttributeContent (object) or TimeAttributeContent (object) (BaseAttributeContentDto) Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
List Entity Location Attributes
path Parameters
entityUuid required | string Entity instance UUID |
Responses
Response samples
- 200
- 400
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "description": "string",
- "type": "data",
- "content": [
- {
- "reference": "string",
- "data": true
}
], - "contentType": "string",
- "properties": {
- "label": "Attribute Name",
- "visible": true,
- "group": "requiredAttributes",
- "required": false,
- "readOnly": false,
- "list": false,
- "multiSelect": false
}, - "constraints": [
- {
- "description": "string",
- "errorMessage": "string",
- "type": "regExp",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]