Upload compliance certificate
curl --request POST \
--url https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"organizationId": "org_6914cd0e16e4c7dccbb54426",
"fileName": "iso-27001-certificate.pdf",
"fileType": "application/pdf",
"fileData": "<string>"
}
'const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
organizationId: 'org_6914cd0e16e4c7dccbb54426',
fileName: 'iso-27001-certificate.pdf',
fileType: 'application/pdf',
fileData: '<string>'
})
};
fetch('https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload"
payload = {
"organizationId": "org_6914cd0e16e4c7dccbb54426",
"fileName": "iso-27001-certificate.pdf",
"fileType": "application/pdf",
"fileData": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"framework": "iso_27001",
"customFrameworkId": {},
"fileName": "<string>",
"fileSize": 123,
"updatedAt": "<string>"
}Trust Portal
Upload compliance certificate | Comp AI API
Upload or replace a compliance certificate PDF such as SOC 2, ISO 27001, HIPAA, or GDPR evidence for Trust Center sharing.
POST
/
v1
/
trust-portal
/
compliance-resources
/
upload
Upload compliance certificate
curl --request POST \
--url https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"organizationId": "org_6914cd0e16e4c7dccbb54426",
"fileName": "iso-27001-certificate.pdf",
"fileType": "application/pdf",
"fileData": "<string>"
}
'const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
organizationId: 'org_6914cd0e16e4c7dccbb54426',
fileName: 'iso-27001-certificate.pdf',
fileType: 'application/pdf',
fileData: '<string>'
})
};
fetch('https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.trycomp.ai/v1/trust-portal/compliance-resources/upload"
payload = {
"organizationId": "org_6914cd0e16e4c7dccbb54426",
"fileName": "iso-27001-certificate.pdf",
"fileType": "application/pdf",
"fileData": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"framework": "iso_27001",
"customFrameworkId": {},
"fileName": "<string>",
"fileSize": 123,
"updatedAt": "<string>"
}Authorizations
API key for authentication
Body
application/json
Organization ID that owns the compliance resource
Example:
"org_6914cd0e16e4c7dccbb54426"
Original file name (PDF only)
Example:
"iso-27001-certificate.pdf"
MIME type of the file
Example:
"application/pdf"
Base64 encoded PDF content
Native compliance framework identifier
Available options:
iso_27001, iso_42001, gdpr, hipaa, soc2_type1, soc2_type2, soc3, pci_dss, nen_7510, iso_9001, pipeda, ccpa Example:
"iso_27001"
Org-authored custom framework ID (alternative to framework)
Example:
"cfrm_6914cd0e16e4c7dccbb54426"
Response
Compliance certificate uploaded successfully
Set for native-framework certificates; null for custom ones
Available options:
iso_27001, iso_42001, gdpr, hipaa, soc2_type1, soc2_type2, soc3, pci_dss, nen_7510, iso_9001, pipeda, ccpa Set for custom-framework certificates; null for native ones
File size in bytes
ISO timestamp when the certificate was last updated
Was this page helpful?

