REST APIs¶
Overview¶
Trustpoint provides a comprehensive set of REST APIs that enable secure, programmatic access to its core services and resources. These APIs are designed around standard HTTP methods and predictable resource-oriented URLs, making them easy to integrate into existing applications and workflows. Through the Trustpoint REST APIs, developers can automate key operations, retrieve and manage data in real time, and build scalable integrations while maintaining the platform’s security, reliability, and compliance standards.
Definition¶
Backup¶
- GET /api/backups/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Query Parameters:
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
user (string)
Example request:
GET /api/backups/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "remote_directory": "string" } ]
- POST /api/backups/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/backups/ HTTP/1.1 Host: example.com Content-Type: application/json { "remote_directory": "string" }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "remote_directory": "string" }
- GET /api/backups/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this Backup Option.
Example request:
GET /api/backups/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "remote_directory": "string" }
- PUT /api/backups/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this Backup Option.
Example request:
PUT /api/backups/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "remote_directory": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "remote_directory": "string" }
- PATCH /api/backups/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this Backup Option.
Example request:
PATCH /api/backups/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "remote_directory": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "remote_directory": "string" }
- DELETE /api/backups/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this Backup Option.
- Status Codes:
204 No Content – No response body
Certificate Profile¶
- GET /api/cert-profiles/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Query Parameters:
created_at (string)
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
unique_name (string)
Example request:
GET /api/cert-profiles/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "unique_name": "string" } ]
- POST /api/cert-profiles/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/cert-profiles/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "unique_name": "string" }
- GET /api/cert-profiles/{id}/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate profile model.
Example request:
GET /api/cert-profiles/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- PUT /api/cert-profiles/{id}/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate profile model.
Example request:
PUT /api/cert-profiles/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- PATCH /api/cert-profiles/{id}/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate profile model.
Example request:
PATCH /api/cert-profiles/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- DELETE /api/cert-profiles/{id}/¶
ViewSet for managing Certificate Profile instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate profile model.
- Status Codes:
204 No Content – No response body
Certificate¶
- GET /api/certificates/¶
List certificates
Retrieve certificates from the database.
- Query Parameters:
not_valid_before (string)
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
serial_number (string)
Example request:
GET /api/certificates/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "common_name": "string" } ]
- POST /api/certificates/¶
ViewSet for managing Certificate instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/certificates/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string" }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "common_name": "string" }
- GET /api/certificates/{id}/¶
ViewSet for managing Certificate instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate model.
Example request:
GET /api/certificates/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string" }
- PUT /api/certificates/{id}/¶
ViewSet for managing Certificate instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate model.
Example request:
PUT /api/certificates/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string" }
- PATCH /api/certificates/{id}/¶
ViewSet for managing Certificate instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate model.
Example request:
PATCH /api/certificates/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string" }
- DELETE /api/certificates/{id}/¶
ViewSet for managing Certificate instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this certificate model.
- Status Codes:
204 No Content – No response body
Device¶
- GET /api/devices/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Query Parameters:
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
Example request:
GET /api/devices/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "common_name": "string", "serial_number": "string", "device_type": 0, "created_at": "2026-07-08T12:12:25.626788", "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 } ]
- POST /api/devices/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/devices/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string", "serial_number": "string", "device_type": 0, "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "common_name": "string", "serial_number": "string", "device_type": 0, "created_at": "2026-07-08T12:12:25.626788", "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- GET /api/devices/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this device model.
Example request:
GET /api/devices/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string", "serial_number": "string", "device_type": 0, "created_at": "2026-07-08T12:12:25.626788", "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- PUT /api/devices/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this device model.
Example request:
PUT /api/devices/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string", "serial_number": "string", "device_type": 0, "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string", "serial_number": "string", "device_type": 0, "created_at": "2026-07-08T12:12:25.626788", "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- PATCH /api/devices/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this device model.
Example request:
PATCH /api/devices/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "common_name": "string", "serial_number": "string", "device_type": 0, "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "common_name": "string", "serial_number": "string", "device_type": 0, "created_at": "2026-07-08T12:12:25.626788", "domain": 1, "onboarding_config": 1, "no_onboarding_config": 1 }
- DELETE /api/devices/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this device model.
- Status Codes:
204 No Content – No response body
Domain¶
- GET /api/domains/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Query Parameters:
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
Example request:
GET /api/domains/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "unique_name": "string" } ]
- POST /api/domains/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/domains/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "unique_name": "string" }
- GET /api/domains/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this domain model.
Example request:
GET /api/domains/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- PUT /api/domains/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this domain model.
Example request:
PUT /api/domains/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- PATCH /api/domains/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this domain model.
Example request:
PATCH /api/domains/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string" }
- DELETE /api/domains/{id}/¶
ViewSet for managing Device instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this domain model.
- Status Codes:
204 No Content – No response body
Issuing-CA¶
- GET /api/issuing-cas/¶
List Issuing CAs
Retrieve all Issuing CAs from the database.
- Query Parameters:
is_active (boolean)
issuing_ca_type (integer) –
0 - Auto-Generated Root
1 - Auto-Generated
2 - Local-Unprotected
3 - Local-PKCS11
4 - Remote-EST
5 - Remote-CMP
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
unique_name (string)
Example request:
GET /api/issuing-cas/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "unique_name": "string", "common_name": "string", "issuing_ca_type": 0, "issuing_ca_type_display": "string", "is_active": true, "created_at": "2026-07-08T12:12:25.626788", "updated_at": "2026-07-08T12:12:25.626788", "last_crl_issued_at": "2026-07-08T12:12:25.626788", "has_crl": true } ]
- GET /api/issuing-cas/{id}/¶
Retrieve Issuing CA
Retrieve details of a specific Issuing CA by ID.
- Parameters:
id (integer) – A unique integer value identifying this issuing ca model.
Example request:
GET /api/issuing-cas/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "common_name": "string", "issuing_ca_type": 0, "issuing_ca_type_display": "string", "is_active": true, "created_at": "2026-07-08T12:12:25.626788", "updated_at": "2026-07-08T12:12:25.626788", "last_crl_issued_at": "2026-07-08T12:12:25.626788", "has_crl": true }
- GET /api/issuing-cas/{id}/crl/¶
Download CRL
Download the Certificate Revocation List (CRL) for this Issuing CA. Requires authentication. Supports both PEM (default) and DER formats via the format query parameter. If no CRL is available, use the POST /api/issuing-cas/<pk>/generate-crl/ endpoint to generate one first.
- Parameters:
id (integer) – A unique integer value identifying this issuing ca model.
- Query Parameters:
encoding (string) – CRL encoding: “pem” (default) or “der”
Example request:
GET /api/issuing-cas/{id}/crl/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
CRLGenerated - CRL Generated:
HTTP/1.1 200 OK Content-Type: application/json { "detail": "CRL file downloaded successfully." }
InvalidFormatParameter - Invalid format parameter:
HTTP/1.1 400 Bad Request Content-Type: application/json { "error": "No CRL available for Issuing CA \"MyCA\".", "hint": "Generate a CRL first using POST /api/issuing-cas/1/generate-crl/" }
NotFound - Not Found:
HTTP/1.1 404 Not Found Content-Type: application/json { "error": "No CRL available for Issuing CA \"MyCA\".", "hint": "Generate a CRL first using POST /api/issuing-cas/1/generate-crl/" }
- POST /api/issuing-cas/{id}/generate-crl/¶
Generate CRL
Manually generate a new Certificate Revocation List (CRL) for this Issuing CA. No request body is required.
- Parameters:
id (integer) – A unique integer value identifying this issuing ca model.
- Status Codes:
200 OK –
CRLGenerated - CRL Generated:
HTTP/1.1 200 OK Content-Type: application/json { "message": "CRL generated successfully for Issuing CA \"MyCA\".", "last_crl_issued_at": "2025-12-02T16:30:00Z" }
ServerError - Server Error:
HTTP/1.1 500 Internal Server Error Content-Type: application/json { "detail": "Failed to generate CRL" }
Logging¶
- DELETE /api/logging/delete/{file_name}/¶
Delete a log file by name.
DELETE /logs/delete/app.log/
- Parameters:
file_name (string)
- Status Codes:
204 No Content – No response body
- GET /api/logging/download/{file_name}/¶
Download a log file by name: /logs/download/?file=app.log
- Parameters:
file_name (string)
Example request:
GET /api/logging/download/{file_name}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "name": "string", "size": 1, "modified": "2026-07-08T12:12:25.626788" }
- GET /api/logging/list_files/¶
Return detailed info for all log files.
Example request:
GET /api/logging/list_files/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "name": "string", "size": 1, "modified": "2026-07-08T12:12:25.626788" }
Signer¶
- GET /api/signed-messages/¶
List all signed messages
Returns a list of all signed messages, ordered by creation date (newest first).
- Query Parameters:
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
signer (integer)
Example request:
GET /api/signed-messages/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "signer": 1, "signer_name": "string", "hash_value": "string", "signature": "string", "created_at": "2026-07-08T12:12:25.626788" } ]
- GET /api/signed-messages/{id}/¶
Retrieve a signed message
Returns details of a specific signed message.
- Parameters:
id (integer) – A unique integer value identifying this signed message model.
Example request:
GET /api/signed-messages/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "signer": 1, "signer_name": "string", "hash_value": "string", "signature": "string", "created_at": "2026-07-08T12:12:25.626788" }
- GET /api/signers/¶
ViewSet for Signer operations.
- Query Parameters:
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
Example request:
GET /api/signers/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "unique_name": "string", "certificate_cn": "string", "certificate_not_valid_after": "2026-07-08T12:12:25.626788", "signature_suite": "string", "created_at": "2026-07-08T12:12:25.626788", "updated_at": "2026-07-08T12:12:25.626788" } ]
- GET /api/signers/{id}/¶
ViewSet for Signer operations.
- Parameters:
id (integer) – A unique integer value identifying this signer model.
Example request:
GET /api/signers/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "certificate_cn": "string", "certificate_not_valid_after": "2026-07-08T12:12:25.626788", "signature_suite": "string", "created_at": "2026-07-08T12:12:25.626788", "updated_at": "2026-07-08T12:12:25.626788" }
- GET /api/signers/{id}/certificate/¶
Get the signer’s certificate in PEM format.
- Parameters:
id (integer) – A unique integer value identifying this signer model.
Example request:
GET /api/signers/{id}/certificate/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "certificate_cn": "string", "certificate_not_valid_after": "2026-07-08T12:12:25.626788", "signature_suite": "string", "created_at": "2026-07-08T12:12:25.626788", "updated_at": "2026-07-08T12:12:25.626788" }
- POST /api/signers/sign/¶
Sign a hash value
Signs a hash value using the specified signer. The hash value must be provided as a hexadecimal string. The signature is returned in hexadecimal format.
- Status Codes:
200 OK – Signature generated successfully
400 Bad Request – Bad Request - Invalid input data
404 Not Found – Not Found - Signer does not exist
500 Internal Server Error – Internal Server Error - Failed to sign hash
Tls¶
- GET /api/tls/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Query Parameters:
credential_type (integer) –
0 - Trustpoint TLS Server
1 - Root CA
2 - Issuing CA
3 - Issued Credential
4 - DevOwnerID
5 - Signer
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
Example request:
GET /api/tls/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "credential_type": 0, "created_at": "2026-07-08T12:12:25.626788" } ]
- POST /api/tls/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
Example request:
POST /api/tls/ HTTP/1.1 Host: example.com Content-Type: application/json { "credential_type": 0 }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "credential_type": 0, "created_at": "2026-07-08T12:12:25.626788" }
- GET /api/tls/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this credential model.
Example request:
GET /api/tls/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "credential_type": 0, "created_at": "2026-07-08T12:12:25.626788" }
- PUT /api/tls/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this credential model.
Example request:
PUT /api/tls/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "credential_type": 0 }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "credential_type": 0, "created_at": "2026-07-08T12:12:25.626788" }
- PATCH /api/tls/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this credential model.
Example request:
PATCH /api/tls/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "credential_type": 0 }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "credential_type": 0, "created_at": "2026-07-08T12:12:25.626788" }
- DELETE /api/tls/{id}/¶
ViewSet for managing Backup instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this credential model.
- Status Codes:
204 No Content – No response body
Auth¶
- POST /api/token/¶
Takes a set of user credentials and returns an access and refresh JSON web token pair to prove the authentication of those credentials.
Example request:
POST /api/token/ HTTP/1.1 Host: example.com Content-Type: application/json { "username": "string", "password": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "username": "string", "password": "string", "access": "string", "refresh": "string" }
- POST /api/token/refresh/¶
Takes a refresh type JSON web token and returns an access type JSON web token if the refresh token is valid.
Example request:
POST /api/token/refresh/ HTTP/1.1 Host: example.com Content-Type: application/json { "refresh": "string" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "access": "string", "refresh": "string" }
Truststore¶
- GET /api/truststores/¶
List Truststores
Retrieve truststore from the database.
- Query Parameters:
intended_usage (integer) –
0 - IDevID
1 - TLS
2 - Generic
3 - Device Owner ID
ordering (string) – Which field to use when ordering the results.
search (string) – A search term.
Example request:
GET /api/truststores/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "unique_name": "string", "intended_usage": 0, "created_at": "2026-07-08T12:12:25.626788", "trust_store_file": "https://example.com" } ]
- POST /api/truststores/¶
Create a new truststore
Add a new truststore by providing its unique_name, intended_usage and trust_store_file.
Example request:
POST /api/truststores/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string", "intended_usage": 0, "trust_store_file": "https://example.com" }
- Status Codes:
Example response:
HTTP/1.1 201 Created Content-Type: application/json { "id": 1, "unique_name": "string", "intended_usage": 0, "created_at": "2026-07-08T12:12:25.626788", "trust_store_file": "https://example.com" }
- GET /api/truststores/{id}/¶
ViewSet for managing Truststore instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this truststore model.
Example request:
GET /api/truststores/{id}/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "intended_usage": 0, "created_at": "2026-07-08T12:12:25.626788", "trust_store_file": "https://example.com" }
- PUT /api/truststores/{id}/¶
ViewSet for managing Truststore instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this truststore model.
Example request:
PUT /api/truststores/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string", "intended_usage": 0, "trust_store_file": "https://example.com" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "intended_usage": 0, "created_at": "2026-07-08T12:12:25.626788", "trust_store_file": "https://example.com" }
- PATCH /api/truststores/{id}/¶
ViewSet for managing Truststore instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this truststore model.
Example request:
PATCH /api/truststores/{id}/ HTTP/1.1 Host: example.com Content-Type: application/json { "unique_name": "string", "intended_usage": 0, "trust_store_file": "https://example.com" }
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "unique_name": "string", "intended_usage": 0, "created_at": "2026-07-08T12:12:25.626788", "trust_store_file": "https://example.com" }
- DELETE /api/truststores/{id}/¶
ViewSet for managing Truststore instances.
Supports standard CRUD operations such as list, retrieve, create, update, and delete.
- Parameters:
id (integer) – A unique integer value identifying this truststore model.
- Status Codes:
204 No Content – No response body
schema¶
- GET /schema/¶
OpenApi3 schema for this API. Format can be selected via content negotiation.
YAML: application/vnd.oai.openapi
JSON: application/vnd.oai.openapi+json
- Query Parameters:
format (string)
lang (string)
Example request:
GET /schema/ HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Example response:
HTTP/1.1 200 OK Content-Type: application/json {}