curl --location 'https://integrations.projectcor.com/v2/integrations/products' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/products"
payload = {
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/products',
{
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'MICROSOFT_DYNAMICS'
},
id: 'EXT-PROD-12345',
name: 'Premium Product',
client_id: 'EXT-CLIENT-67890',
brand_id: 'EXT-BRAND-11111',
description: 'Premium product description'
})
}
);
const data = await response.json();
console.log(data);
{
"id": 52188,
"name": "Premium Product",
"client_id": 58294,
"brand_id": 52187,
"company_id": 2336,
"user_id": 48429,
"created_at": "2025-12-09T15:22:28Z",
"updated_at": "2025-12-09T15:22:28Z"
}
{
"error": "ClientNotFoundError",
"message": "Client with external ID 'EXT-CLIENT-67890' not found",
"code": "ZC004"
}
{
"error": "BrandNotFoundError",
"message": "Brand with external ID 'EXT-BRAND-11111' not found",
"code": "ZC004"
}
Products
Create Product
Creates a new product in your COR instance with external ID mapping
POST
/
v2
/
integrations
/
products
curl --location 'https://integrations.projectcor.com/v2/integrations/products' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/products"
payload = {
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/products',
{
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'MICROSOFT_DYNAMICS'
},
id: 'EXT-PROD-12345',
name: 'Premium Product',
client_id: 'EXT-CLIENT-67890',
brand_id: 'EXT-BRAND-11111',
description: 'Premium product description'
})
}
);
const data = await response.json();
console.log(data);
{
"id": 52188,
"name": "Premium Product",
"client_id": 58294,
"brand_id": 52187,
"company_id": 2336,
"user_id": 48429,
"created_at": "2025-12-09T15:22:28Z",
"updated_at": "2025-12-09T15:22:28Z"
}
{
"error": "ClientNotFoundError",
"message": "Client with external ID 'EXT-CLIENT-67890' not found",
"code": "ZC004"
}
{
"error": "BrandNotFoundError",
"message": "Brand with external ID 'EXT-BRAND-11111' not found",
"code": "ZC004"
}
Creates a new product in your COR instance through the integrations service. The product must be associated with an existing client and brand that were previously created through the integrations API.
Request Body Requirements
object
required
Show properties
Show properties
string
required
Integration source identifier. Must be one of:
JIRA, SALESFORCE, ADVERTMIND, QUICKBOOKS, ZAPIER, OKTA, MICROSOFT_DYNAMICS, GITHUB, MICROSOFT_TEAMS, VBS, SAP, GLOBANTstring
required
External product ID from your source system
string
required
Product name
string
required
External client ID. The client must have been previously created through the integrations API.
string
required
External brand ID. The brand must have been previously created through the integrations API.
string
Product description
Known Errors
ValidationError— Missing required fieldsClientNotFoundError— The specified client does not exist in the integration mappingsBrandNotFoundError— The specified brand does not exist in the integration mappingsDuplicateExternalIdError— A product with this external ID already exists for this source
curl --location 'https://integrations.projectcor.com/v2/integrations/products' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/products"
payload = {
"metadata": {
"source": "MICROSOFT_DYNAMICS"
},
"id": "EXT-PROD-12345",
"name": "Premium Product",
"client_id": "EXT-CLIENT-67890",
"brand_id": "EXT-BRAND-11111",
"description": "Premium product description"
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/products',
{
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'MICROSOFT_DYNAMICS'
},
id: 'EXT-PROD-12345',
name: 'Premium Product',
client_id: 'EXT-CLIENT-67890',
brand_id: 'EXT-BRAND-11111',
description: 'Premium product description'
})
}
);
const data = await response.json();
console.log(data);
{
"id": 52188,
"name": "Premium Product",
"client_id": 58294,
"brand_id": 52187,
"company_id": 2336,
"user_id": 48429,
"created_at": "2025-12-09T15:22:28Z",
"updated_at": "2025-12-09T15:22:28Z"
}
{
"error": "ClientNotFoundError",
"message": "Client with external ID 'EXT-CLIENT-67890' not found",
"code": "ZC004"
}
{
"error": "BrandNotFoundError",
"message": "Brand with external ID 'EXT-BRAND-11111' not found",
"code": "ZC004"
}
Was this page helpful?
⌘I

