Skip to navigation

Companies

Companies (Clients in the awork UI) are the contacts or organizations that you work with. Projects are usually connected to Companies.

Most company integrations follow the same pattern: create or find the company, store its id in your system, then add contact information and link projects to it. Company endpoints require the company-master-data permission (or an administrator role).

Creating a company

Creating a company is easy. The only required field for creating a company is the name.

Request
curl -X POST "https://api.awork.com/api/v1/companies" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "Northstar Creative",
"description": "Brand and product design partner",
"industry": "Design agency"
}'

Save the returned company id for subsequent requests:

Response
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Northstar Creative",
"description": "Brand and product design partner",
"industry": "Design agency",
"projectsCount": 0,
"projectsInProgressCount": 0
}

Finding and updating a company

Use the list endpoint to find companies by name or another field with the standard filtering and pagination parameters:

List companies
curl 'https://api.awork.com/api/v1/companies?page=1&pageSize=25&filterby=name%20eq%20%22Northstar%20Creative%22' \
-H "Authorization: Bearer {token}"

Update only the fields you want to change. The name remains required on the update form:

Update a company
curl -X PUT "https://api.awork.com/api/v1/companies/123e4567-e89b-12d3-a456-426614174000" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "Northstar Creative GmbH",
"industry": "Brand agency"
}'

Adding contact information

Contact information is managed separately from the company. For example, add a billing address and then retrieve all contact records with GET /companies/{companyId}/contactinfo:

Add a billing address
curl -X POST "https://api.awork.com/api/v1/companies/123e4567-e89b-12d3-a456-426614174000/contactinfo" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"type": "address",
"subType": "invoice",
"addressLine1": "Torstraße 140",
"zipCode": "10119",
"city": "Berlin",
"country": "DE",
"isAddress": true
}'

See the Companies API reference for contact-info update and delete operations.