curl --request PATCH \
--url https://api.trycomp.ai/v1/vendors/{id} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"treatmentStrategy": "mitigate",
"treatmentStrategyDescription": "We isolated the vendor to a dedicated VPC.",
"website": "<string>",
"isSubProcessor": true,
"assigneeId": "<string>"
}
'const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
treatmentStrategy: 'mitigate',
treatmentStrategyDescription: 'We isolated the vendor to a dedicated VPC.',
website: '<string>',
isSubProcessor: true,
assigneeId: '<string>'
})
};
fetch('https://api.trycomp.ai/v1/vendors/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.trycomp.ai/v1/vendors/{id}"
payload = {
"name": "<string>",
"description": "<string>",
"treatmentStrategy": "mitigate",
"treatmentStrategyDescription": "We isolated the vendor to a dedicated VPC.",
"website": "<string>",
"isSubProcessor": True,
"assigneeId": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "vnd_abc123def456",
"name": "CloudTech Solutions Inc.",
"description": "Cloud infrastructure provider offering AWS-like services including compute, storage, and networking solutions for enterprise customers.",
"category": "cloud",
"status": "assessed",
"inherentProbability": "possible",
"inherentImpact": "moderate",
"residualProbability": "unlikely",
"residualImpact": "minor",
"website": "https://www.cloudtechsolutions.com",
"organizationId": "org_abc123def456",
"assigneeId": "mem_abc123def456",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"authType": "api-key",
"authenticatedUser": {
"id": "usr_def456ghi789",
"email": "user@example.com"
}
}{
"message": [
"name should not be empty",
"category must be a valid enum value",
"status must be a valid enum value",
"website must be a URL address"
],
"error": "Bad Request",
"statusCode": 400
}{
"message": "Invalid or expired API key"
}{
"message": "Vendor with ID vnd_abc123def456 not found in organization org_abc123def456"
}{
"message": "Internal server error"
}Update vendor record | Comp AI API
Update vendor ownership, risk attributes, review metadata, and third-party compliance context for an organization.
curl --request PATCH \
--url https://api.trycomp.ai/v1/vendors/{id} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"treatmentStrategy": "mitigate",
"treatmentStrategyDescription": "We isolated the vendor to a dedicated VPC.",
"website": "<string>",
"isSubProcessor": true,
"assigneeId": "<string>"
}
'const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
treatmentStrategy: 'mitigate',
treatmentStrategyDescription: 'We isolated the vendor to a dedicated VPC.',
website: '<string>',
isSubProcessor: true,
assigneeId: '<string>'
})
};
fetch('https://api.trycomp.ai/v1/vendors/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.trycomp.ai/v1/vendors/{id}"
payload = {
"name": "<string>",
"description": "<string>",
"treatmentStrategy": "mitigate",
"treatmentStrategyDescription": "We isolated the vendor to a dedicated VPC.",
"website": "<string>",
"isSubProcessor": True,
"assigneeId": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "vnd_abc123def456",
"name": "CloudTech Solutions Inc.",
"description": "Cloud infrastructure provider offering AWS-like services including compute, storage, and networking solutions for enterprise customers.",
"category": "cloud",
"status": "assessed",
"inherentProbability": "possible",
"inherentImpact": "moderate",
"residualProbability": "unlikely",
"residualImpact": "minor",
"website": "https://www.cloudtechsolutions.com",
"organizationId": "org_abc123def456",
"assigneeId": "mem_abc123def456",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"authType": "api-key",
"authenticatedUser": {
"id": "usr_def456ghi789",
"email": "user@example.com"
}
}{
"message": [
"name should not be empty",
"category must be a valid enum value",
"status must be a valid enum value",
"website must be a URL address"
],
"error": "Bad Request",
"statusCode": 400
}{
"message": "Invalid or expired API key"
}{
"message": "Vendor with ID vnd_abc123def456 not found in organization org_abc123def456"
}{
"message": "Internal server error"
}Authorizations
API key for authentication
Path Parameters
Vendor ID
"vnd_abc123def456"
Body
Vendor update data
Vendor name
Vendor description
Vendor category
cloud, infrastructure, software_as_a_service, finance, marketing, sales, hr, other Assessment status
not_assessed, in_progress, assessed Inherent probability
very_unlikely, unlikely, possible, likely, very_likely Inherent impact
insignificant, minor, moderate, major, severe Residual probability
very_unlikely, unlikely, possible, likely, very_likely Residual impact
insignificant, minor, moderate, major, severe Risk treatment strategy
accept, avoid, mitigate, transfer "mitigate"
Description of the treatment strategy
"We isolated the vendor to a dedicated VPC."
Vendor website URL
Whether the vendor is a sub-processor
Assignee member ID
Response
Vendor updated successfully
Vendor ID
"vnd_abc123def456"
Vendor name
"CloudTech Solutions Inc."
Vendor description
"Cloud infrastructure provider offering AWS-like services including compute, storage, and networking solutions for enterprise customers."
cloud, infrastructure, software_as_a_service, finance, marketing, sales, hr, other "cloud"
not_assessed, in_progress, assessed "assessed"
very_unlikely, unlikely, possible, likely, very_likely "possible"
insignificant, minor, moderate, major, severe "moderate"
very_unlikely, unlikely, possible, likely, very_likely "unlikely"
insignificant, minor, moderate, major, severe "minor"
"https://www.cloudtechsolutions.com"
"org_abc123def456"
ID of the user assigned to manage this vendor
"mem_abc123def456"
When the vendor was created
When the vendor was last updated
How the request was authenticated
api-key, session User information (only for session auth)
Show child attributes
Show child attributes
Was this page helpful?

