curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345"
payload = {
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'SALESFORCE'
},
name: 'Website Redesign Project - Phase 2',
end: '2025-04-30',
estimated_time: 250,
status: 'in_progress',
estimated: 18000
})
}
);
const data = await response.json();
console.log(data);
{
"id": 155693,
"name": "Website Redesign Project - Phase 2",
"client_id": 25855,
"brief": "Complete website overhaul including new branding",
"start": "2025-01-15 00:00:00",
"end": "2025-04-30 00:00:00",
"pm_id": 8546,
"estimated_time": 250,
"billable": true,
"status": "in_progress",
"estimated": 18000,
"company_id": 1234,
"created_at": "2025-01-10T14:30:00Z",
"updated_at": "2025-01-15T10:00:00Z"
}
{
"error": "ProjectNotFoundError",
"message": "Project with external ID 'SF-OPP-12345' not found for source SALESFORCE",
"code": "ZC004"
}
Projects
Update Project
Updates an existing project in your COR instance using its external ID
PUT
/
v2
/
integrations
/
projects
/
{id}
curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345"
payload = {
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'SALESFORCE'
},
name: 'Website Redesign Project - Phase 2',
end: '2025-04-30',
estimated_time: 250,
status: 'in_progress',
estimated: 18000
})
}
);
const data = await response.json();
console.log(data);
{
"id": 155693,
"name": "Website Redesign Project - Phase 2",
"client_id": 25855,
"brief": "Complete website overhaul including new branding",
"start": "2025-01-15 00:00:00",
"end": "2025-04-30 00:00:00",
"pm_id": 8546,
"estimated_time": 250,
"billable": true,
"status": "in_progress",
"estimated": 18000,
"company_id": 1234,
"created_at": "2025-01-10T14:30:00Z",
"updated_at": "2025-01-15T10:00:00Z"
}
{
"error": "ProjectNotFoundError",
"message": "Project with external ID 'SF-OPP-12345' not found for source SALESFORCE",
"code": "ZC004"
}
Updates an existing project in your COR instance using its external ID. Only the fields provided in the request body will be updated; other fields remain unchanged.
Path Parameters
string
required
External project ID that was used when creating the project
Request Body Requirements
Themetadata.source field is required. All other fields are optional — only provided fields will be updated.
object
required
Show properties
Show properties
string
required
Integration source identifier. Must match the source used when creating the project.
string
Updated project name
string
External client ID
string
Updated project description
string
Project start date in
YYYY-MM-DD formatstring
Project end date in
YYYY-MM-DD formatstring
External project manager user ID
number
Estimated hours for the project
boolean
Whether the project is billable
string
Project status
string
External currency ID
string
Project evaluation date in
YYYY-MM-DD formatnumber
Estimated monetary value for the project
string
External fee ID
string
External contract ID
string
Project deliverables description
string
Work order number or code
string
Income type for the project. Possible values:
fee, one_time, hourly_rate, contractboolean
default:"false"
Whether the project is archived
Known Errors
ProjectNotFoundError— No project found with the specified external ID for this sourceValidationError— Missing requiredmetadata.sourcefieldInvalidDateRangeError— Thestartdate is after theenddate
curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345"
payload = {
"metadata": {
"source": "SALESFORCE"
},
"name": "Website Redesign Project - Phase 2",
"end": "2025-04-30",
"estimated_time": 250,
"status": "in_progress",
"estimated": 18000
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.json())
const response = await fetch(
'https://integrations.projectcor.com/v2/integrations/projects/SF-OPP-12345',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'SALESFORCE'
},
name: 'Website Redesign Project - Phase 2',
end: '2025-04-30',
estimated_time: 250,
status: 'in_progress',
estimated: 18000
})
}
);
const data = await response.json();
console.log(data);
{
"id": 155693,
"name": "Website Redesign Project - Phase 2",
"client_id": 25855,
"brief": "Complete website overhaul including new branding",
"start": "2025-01-15 00:00:00",
"end": "2025-04-30 00:00:00",
"pm_id": 8546,
"estimated_time": 250,
"billable": true,
"status": "in_progress",
"estimated": 18000,
"company_id": 1234,
"created_at": "2025-01-10T14:30:00Z",
"updated_at": "2025-01-15T10:00:00Z"
}
{
"error": "ProjectNotFoundError",
"message": "Project with external ID 'SF-OPP-12345' not found for source SALESFORCE",
"code": "ZC004"
}
Was this page helpful?

