CZERTAINLY Entity Provider API
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
}
]
}
]
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",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
}
Update Entity instance
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
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",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
{- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
}
Validate Location Attributes
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
uuid | string UUID of the Attribute |
name required | string Name of the Attribute |
content required | object Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
Response samples
- 200
- 400
- 404
[- {
- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
}
]
Create Entity instance
Request Body schema: application/json
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",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
- 422
{- "uuid": "7b55ge1c-844f-11dc-a8a3-0242ac120002",
- "name": "Name",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
}
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",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
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/json
uuid | string UUID of the Attribute |
name required | string Name of the Attribute |
content required | object Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
Response samples
- 400
- 404
- 422
{- "message": "Error message"
}
Response samples
- 200
- 400
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
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.
Remove Certificate from Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
required | object Metadata of the Certificate |
required | Array of objects (RequestAttributeDto) List of Location Attributes |
Responses
Request samples
- Payload
{- "certificateMetadata": {
- "property1": { },
- "property2": { }
}, - "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
{- "certificateMetadata": {
- "property1": { },
- "property2": { }
}
}
Validate list of Attributes to push Certificate into Location
path Parameters
entityUuid required | string Entity Instance UUID |
Request Body schema: application/json
uuid | string UUID of the Attribute |
name required | string Name of the Attribute |
content required | object Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
Push the Certificate into the Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
certificate required | string Base64-encoded Certificate |
certificateType | string Default: "X509" Enum: "X509" "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": "X509",
- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
], - "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
{- "certificateMetadata": {
- "property1": { },
- "property2": { }
}
}
Validate list of Attributes to generate key pair and CSR
path Parameters
entityUuid required | string Entity Instance UUID |
Request Body schema: application/json
uuid | string UUID of the Attribute |
name required | string Name of the Attribute |
content required | object Content of the Attribute |
Responses
Request samples
- Payload
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
Response samples
- 422
[ "Error Message 1", "Error Message 2" ]
Generate key pair and CSR for the Location
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
required | Array of objects (RequestAttributeDto) List of Location Attributes |
required | Array of objects (RequestAttributeDto) List of Attributes to generate CSR |
Responses
Request samples
- Payload
{- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
], - "csrAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
{- "csr": "string",
- "certificateType": "X509",
- "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
}
Get information about the Location content. All identified certificates are returned
path Parameters
entityUuid required | string Entity instance UUID |
Request Body schema: application/json
required | Array of objects (RequestAttributeDto) List of Location Attributes | ||||||
Array
|
Responses
Request samples
- Payload
{- "locationAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { }
}
]
}
Response samples
- 200
- 400
- 404
{- "certificates": [
- {
- "certificateData": "string",
- "metadata": {
- "property1": { },
- "property2": { }
}, - "certificateType": "X509",
- "withKey": true,
- "pushAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
], - "csrAttributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
}
], - "metadata": {
- "property1": { },
- "property2": { }
}, - "multipleEntries": false,
- "supportKeyManagement": false
}
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",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]
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",
- "content": { },
- "label": "Attribute Name",
- "type": "STRING",
- "required": false,
- "readOnly": false,
- "visible": true,
- "list": false,
- "description": "string",
- "validationRegex": "string",
- "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "STRING",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}, - "multiSelect": false,
- "group": "requiredAttributes"
}
]