Supplier Certifications API

Attach, inspect, update and remove compliance certificates for a supplier.

Endpoints

MethodPathDescription
GET/api/v1/supplier-certifications?supplierId={uuid}List certifications for one supplier
GET/api/v1/supplier-certifications/{id}Get a single certification
POST/api/v1/supplier-certifications?supplierId={uuid}Add a certification to a supplier
PATCH/api/v1/supplier-certifications/{id}Update a certification
DELETE/api/v1/supplier-certifications/{id}Remove a certification
Warning

Both GET (list) and POST require the supplierId query parameter. Omitting it returns 400 Bad Request.


GET /api/v1/supplier-certifications

Lists all certifications attached to a given supplier.

Query parameterTypeRequiredDescription
supplierIduuidThe supplier whose certifications to return
Shell
curl "{{BASE_URL}}/api/v1/supplier-certifications?supplierId=3f2b9a1c-…"

Response 200 OK — JSON array of SupplierCertificationDto.


GET /api/v1/supplier-certifications/{id}

Fetches a single certification.


POST /api/v1/supplier-certifications

Attaches a certification to a supplier. supplierId must be passed both as a query parameter and inside the request body.

Request body (CreateSupplierCertificationDto)

FieldTypeRequiredDescription
supplierIduuidSupplier to attach the certification to
certificationTypestringe.g. GOTS, GRS, OEKO_TEX, REACH, ISO_14001
certificateNumberstringNumber printed on the certificate
certificateExpirystringExpiry (ISO date or date-time)
documentIdstringReference to an uploaded certificate document
isDigitallySignedbooleanWhether the PDF is digitally signed
signatureVerifiedbooleanWhether signature verification has been performed
verificationStatusstringFree-form status (e.g. PENDING, VERIFIED, REJECTED)
verificationDetailsstringDetailed explanation of the verification outcome
Shell
curl -X POST "{{BASE_URL}}/api/v1/supplier-certifications?supplierId=3f2b9a1c-…" \
-H "Content-Type: application/json" \
-d '{
"supplierId": "3f2b9a1c-4d2e-4b6e-9c1a-6f5b8e2d7c10",
"certificationType": "GOTS",
"certificateNumber": "GOTS-2026-0001",
"certificateExpiry": "2027-04-21T00:00:00.000Z",
"isDigitallySigned": true
}'

PATCH /api/v1/supplier-certifications/{id}

Partially updates a certification.

Shell
curl -X PATCH {{BASE_URL}}/api/v1/supplier-certifications/… \
-H "Content-Type: application/json" \
-d '{ "verificationStatus": "VERIFIED", "signatureVerified": true }'

DELETE /api/v1/supplier-certifications/{id}

Removes a single certification.

  • 204 No Content — deleted.
  • 404 Not Found — certification does not exist in your tenant.

Certification schema

SupplierCertificationDto:

JSON
{
"id": "6d1b2e0a-91fa-4e13-bdc0-5a9b7d3c08a1",
"supplierId": "3f2b9a1c-4d2e-4b6e-9c1a-6f5b8e2d7c10",
"certificationType": "GOTS",
"certificateNumber": "GOTS-2026-0001",
"certificateExpiry": "2027-04-21T00:00:00.000Z",
"documentId": "doc_01HXYZ...",
"isDigitallySigned": true,
"signatureVerified": true,
"verificationStatus": "VERIFIED",
"verificationDetails": "Chain of trust OK",
"verifiedAt": "2026-04-21T10:02:00.000Z",
"createdAt": "2026-04-21T10:00:00.000Z",
"updatedAt": "2026-04-21T10:02:00.000Z"
}