curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1"
payload = {
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}
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/user-position/external-user-position-1',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'GLOBANT'
},
name: 'Software Developer',
rate: 60,
seniority: 'Sr.',
category_id: 'external-category-1'
})
}
);
const data = await response.json();
console.log(data);
{
"statusCode": 200,
"status": "success",
"data": {
"name": "Software Developer",
"company_id": 2336,
"rate": 60,
"created_at": "2025-11-19 17:54:15",
"updated_at": "2025-11-19 17:54:27",
"deleted_at": null,
"user_position_default": false,
"seniority": "Sr.",
"__meta__": {
"oldRate": 1
}
}
}
{
"error": "PositionNotFoundError",
"message": "Position with external ID 'external-user-position-1' not found",
"code": "ZC004"
}
Positions
Update Position
Updates an existing user position in your COR instance using its external ID
PUT
/
v2
/
integrations
/
user-position
/
{id}
curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1"
payload = {
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}
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/user-position/external-user-position-1',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'GLOBANT'
},
name: 'Software Developer',
rate: 60,
seniority: 'Sr.',
category_id: 'external-category-1'
})
}
);
const data = await response.json();
console.log(data);
{
"statusCode": 200,
"status": "success",
"data": {
"name": "Software Developer",
"company_id": 2336,
"rate": 60,
"created_at": "2025-11-19 17:54:15",
"updated_at": "2025-11-19 17:54:27",
"deleted_at": null,
"user_position_default": false,
"seniority": "Sr.",
"__meta__": {
"oldRate": 1
}
}
}
{
"error": "PositionNotFoundError",
"message": "Position with external ID 'external-user-position-1' not found",
"code": "ZC004"
}
Updates an existing user position in your COR instance using its external ID.
Path Parameters
string
required
External position ID that was used when creating the position
Request Body Requirements
string
Updated position name
number
Updated hourly rate for the position
string
Updated seniority level (e.g., “Jr.”, “Sr.”, “Lead”)
string
External category ID. The category must have been previously created through the integrations API.
Known Errors
PositionNotFoundError— No position found with the specified external ID for this sourceValidationError— Missing requiredmetadata.sourcefieldCategoryNotFoundError— The specified category does not exist in the integration mappings
curl --location --request PUT 'https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}'
import requests
url = "https://integrations.projectcor.com/v2/integrations/user-position/external-user-position-1"
payload = {
"metadata": {
"source": "GLOBANT"
},
"name": "Software Developer",
"rate": 60,
"seniority": "Sr.",
"category_id": "external-category-1"
}
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/user-position/external-user-position-1',
{
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
metadata: {
source: 'GLOBANT'
},
name: 'Software Developer',
rate: 60,
seniority: 'Sr.',
category_id: 'external-category-1'
})
}
);
const data = await response.json();
console.log(data);
{
"statusCode": 200,
"status": "success",
"data": {
"name": "Software Developer",
"company_id": 2336,
"rate": 60,
"created_at": "2025-11-19 17:54:15",
"updated_at": "2025-11-19 17:54:27",
"deleted_at": null,
"user_position_default": false,
"seniority": "Sr.",
"__meta__": {
"oldRate": 1
}
}
}
{
"error": "PositionNotFoundError",
"message": "Position with external ID 'external-user-position-1' not found",
"code": "ZC004"
}
Was this page helpful?
⌘I

