Creates a vendor in the caller's vendor directory from a curated writable request and returns the created record, scoped server-side to the caller's organization. Requires an Idempotency-Key header (enforced at the gateway); a replay with the same key returns the originally created vendor.
Writable, curated subset for creating a vendor in the caller's directory.
It carries only the fields a caller may set at create time; the organization is derived from the caller's access token. Field types match the Vendor response (same enums, same contract_value minor-units and contract_end_date Timestamp representation) so input and output use the same shapes.
Primary domain name of the vendor (e.g. "acme.com"). Required; normalized and validated server-side, and deduplicated against the caller's existing directory (organization + domain_name) — a domain already present is rejected with ALREADY_EXISTS.
Customer-defined free-text identifier for the vendor (the caller's own external reference, not the vendor's id). Optional.
Whether the vendor should be actively monitored. Optional; when omitted the vendor is created not monitored (consumes no monitoring slot).
Risk level assigned to a vendor, as exposed on the public API.
- RISK_LEVEL_UNSPECIFIED: Default zero value; risk level was not set.
- RISK_LEVEL_NONE: No assessed risk to the vendor relationship.
- RISK_LEVEL_LOW: Minor or well-mitigated exposure.
- RISK_LEVEL_MEDIUM: Moderate exposure that warrants periodic monitoring.
- RISK_LEVEL_HIGH: Significant exposure requiring active oversight.
- RISK_LEVEL_CRITICAL: Severe exposure requiring immediate remediation.
Business impact if a vendor is compromised, as exposed on the public API.
- BUSINESS_IMPACT_UNSPECIFIED: Default zero value; business impact was not set.
- BUSINESS_IMPACT_NONE: No material impact to the business if this vendor is compromised.
- BUSINESS_IMPACT_LOW: Limited, easily contained disruption.
- BUSINESS_IMPACT_MEDIUM: Noticeable disruption to some business functions.
- BUSINESS_IMPACT_HIGH: Significant disruption to core business functions.
- BUSINESS_IMPACT_CRITICAL: Severe, potentially existential disruption to the business.
Monetary value of the contract, in the minor units of the customer account's currency (e.g. cents for a USD account) — the same representation as Vendor.contract_value. Optional.
Date the vendor contract expires. Optional; absent when not set. Same representation as Vendor.contract_end_date.
Data region where a vendor operates, as exposed on the public API.
- DATA_REGION_UNSPECIFIED: Default zero value; data region was not set.
- DATA_REGION_US: United States.
- DATA_REGION_EU: European Union.
- DATA_REGION_UK: United Kingdom.
- DATA_REGION_CA: Canada.
- DATA_REGION_AU: Australia.
- DATA_REGION_APAC: Asia-Pacific.
- Mock serverhttps://docs.titanapi.securityscorecard.io/_mock/openapi.public/public/v1/vendors/create
curl -i -X POST \
https://docs.titanapi.securityscorecard.io/_mock/openapi.public/public/v1/vendors/create \
-H 'Content-Type: application/json' \
-d '{
"domainName": "string",
"companyName": "string",
"vendorId": "string",
"isMonitored": true,
"riskLevel": "RISK_LEVEL_UNSPECIFIED",
"businessImpact": "BUSINESS_IMPACT_UNSPECIFIED",
"dataTypesShared": [
"DATA_TYPE_SHARED_UNSPECIFIED"
],
"accessTypes": [
"ACCESS_TYPE_UNSPECIFIED"
],
"contractValue": "string",
"contractEndDate": "2019-08-24T14:15:22Z",
"dataRegion": "DATA_REGION_UNSPECIFIED"
}'{ "vendor": { "id": "string", "domainName": "string", "companyName": "string", "companyIndustryCategory": "string", "companyLogoUrl": "string", "lifecycleStatus": "VENDOR_LIFECYCLE_STATUS_UNSPECIFIED", "isMonitored": true, "dataRegion": "DATA_REGION_UNSPECIFIED", "riskLevel": "RISK_LEVEL_UNSPECIFIED", "dataTypesShared": [ … ], "businessImpact": "BUSINESS_IMPACT_UNSPECIFIED", "vendorId": "string", "accessTypes": [ … ], "contractValue": "string", "contractEndDate": "2019-08-24T14:15:22Z", "lastAssessedDate": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "score": 0, "grade": "PUBLIC_LETTER_GRADE_UNSPECIFIED" } }