CZERTAINLY Compliance Provider API (2.14.1)
Download OpenAPI specification:Download
REST API for implementations of custom Compliance Provider
Compliance Provider API. Used to check the compliance of a certificate. The provider contains the list of rules for checking the compliance. The user can choose the list of compliance checks has to be performed. To check for the compliance of a certificate, the Connector accepts certificate content and the list of rule references. Once the values are received, compliance is checked and status will be returned
Check certificate compliance
Authorizations:
path Parameters
kind required | string Connector Kind |
Request Body schema: application/jsonrequired
certificate required | string Base64 encoded Certificate content |
Array of objects (ComplianceRequestRulesDto) List of UUIDs of Compliance rules |
Responses
Request samples
- Payload
{- "certificate": "string",
- "rules": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "attributes": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Attribute",
- "contentType": "string",
- "content": [
- {
- "reference": "string",
- "data": true
}
]
}
]
}
]
}
Response samples
- 200
- 400
- 403
- 404
- 422
{- "status": "not_checked",
- "rules": [
- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Rule1",
- "status": "ok"
}
]
}
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
Authorizations:
Responses
Response samples
- 200
- 400
- 403
- 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.
Compliance Provider rules API. Used to get the list of rules provided by the connector. These rules will be made available for the users to choose from the list.To check for the compliance of a certificate, the Connector accepts certificate content and the list of rule references. Once the values are received, compliance is checked based on the rules.
Get list of rules
Authorizations:
path Parameters
kind required | string Connector kind |
Responses
Response samples
- 200
- 400
- 403
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "groupUuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Rule1",
- "certificateType": "X.509",
- "attributes": [
- {
- "version": "2",
- "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": [
- {
- "type": "regExp",
- "errorMessage": "string",
- "description": "string",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
], - "description": "Sample rule description"
}
]
Get list of groups
Authorizations:
path Parameters
kind required | string Connector kind |
Responses
Response samples
- 200
- 400
- 403
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "RFC",
- "description": "Sample description of the group"
}
]
Get list of rules for a group
Authorizations:
path Parameters
kind required | string Connector kind |
uuid required | string Group kind |
Responses
Response samples
- 200
- 400
- 403
- 404
[- {
- "uuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "groupUuid": "166b5cf52-63f2-11ec-90d6-0242ac120003",
- "name": "Rule1",
- "certificateType": "X.509",
- "attributes": [
- {
- "version": "2",
- "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": [
- {
- "type": "regExp",
- "errorMessage": "string",
- "description": "string",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
], - "description": "Sample rule description"
}
]
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
Authorizations:
path Parameters
functionalGroup required | string (FunctionGroupCode) Enum: "credentialProvider" "legacyAuthorityProvider" "authorityProvider" "discoveryProvider" "entityProvider" "complianceProvider" "cryptographyProvider" "notificationProvider" Function Group |
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" Content Type of the Attribute |
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
- 403
- 404
- 422
{- "message": "Error message"
}
List available Attributes
Authorizations:
path Parameters
functionalGroup required | string (FunctionGroupCode) Enum: "credentialProvider" "legacyAuthorityProvider" "authorityProvider" "discoveryProvider" "entityProvider" "complianceProvider" "cryptographyProvider" "notificationProvider" Function Group |
kind required | string Kind |
Responses
Response samples
- 200
- 400
- 403
- 404
[- {
- "version": "2",
- "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": [
- {
- "type": "regExp",
- "errorMessage": "string",
- "description": "string",
- "data": "string"
}
], - "attributeCallback": {
- "callbackContext": "string",
- "callbackMethod": "string",
- "mappings": [
- {
- "from": "string",
- "attributeType": "data",
- "attributeContentType": "string",
- "to": "string",
- "targets": [
- "pathVariable"
], - "value": { }
}
]
}
}
]