Common operations
Upserting Records
Create or update a project, task or Workflow App record by external key.
Upsert by external key
POST
/api/v2/{entity}/upsertCreate or update by external keyPUT
/api/v2/{entity}/upsertCreate or update by external keySupported entities are projects, tasks and apps.
Provide a non-empty externalKey (your system's id). Do not send id. Celoxis finds a record with that externalKey in your company; if found it updates, otherwise it creates.
The response includes the usual entity JSON plus action (created or updated) and success: true. externalKey should be unique per company per entity type. Multiple matches return HTTP 409.
To create or update a task:
curl -g -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: bearer YourTokenHere' \
-d '{
"externalKey": "ERP-T-9876",
"name": "Design review",
"project": "ERP-P-1001"
}' \
'https://app.celoxis.com/psa/api/v2/tasks/upsert'To create or update a project:
curl -g -X PUT \
-H 'Content-Type: application/json' \
-H 'Authorization: bearer YourTokenHere' \
-d '{
"externalKey": "ERP-P-1001",
"name": "Website Redesign",
"workspace": 12345
}' \
'https://app.celoxis.com/psa/api/v2/projects/upsert'To create or update a Workflow App record:
curl -g -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: bearer YourTokenHere' \
-d '{
"externalKey": "ERP-A-1001",
"app": "Bug",
"name": "Investigate login issue",
"project": "ERP-P-1001"
}' \
'https://app.celoxis.com/psa/api/v2/apps/upsert'