Skip to content

Company

Allowed query parameters

Filters

FilterTypeDescription
searchStringFull-text search
is_archivedBooleanShow only active or archived companies
tagsStringFilter by tag names (comma-separated)
custom_fieldKey,StringFilter by Custom Field (eg. my_internal_id,42)

Sorting

name, created_at, is_archived,

Includes

type, contacts, media, avatars, projects, offers, offers.member.user.media, invoices, invoices.member.user.media, overdue_invoices, pending_invoices, expenses, times, projects_count, contacts_count, offers_count, invoices_count, overdue_invoices_count, pending_invoices_count, expenses_count, times_count, tags, customerTransactions,

Appends

(Available append parameters for additional computed fields)

billing, income_total, income_net_total, costs_total, cost_efficiency_index, hours_tracked_total,

Create a company

post
/company
Attribute (* required)TypeDescription
name *StringCompany title
descriptionString?Company description
website_urlString?Company website URL
custom_fieldsObject?Custom data as Custom Fields
settingsObject?Company-specific settings
settings.autoSendInvoiceRemindersBoolean?Automatically send invoice reminders

Example response

json
// HTTP 201 Created
{
    // a company object
}

Update a company

put
/company/{id}
Attribute (* required)TypeDescription
nameStringCompany title
descriptionString?Company description
website_urlString?Company website URL
is_archivedBooleanIf company is archived
custom_fieldsObject?Custom data as Custom Fields
settingsObject?Company-specific settings
settings.autoSendInvoiceRemindersBoolean?Automatically send invoice reminders

Example response

json
// HTTP 200 OK
{
    // a company object
}

Retrieve a company

get
/company/{id}

Example response

json
// HTTP 200 OK
{
    "id": "PQYLdqm4wR",
    "name": "GoFly Travel",
    "description": null,
    "website_url": "https://gofly.travel",
    "is_archived": false,
    "logo_url": "https://logo.clearbit.com/gofly.travel",
    "avatar": {
        "uuid": "a8c5e843-93a0-4c74-8124-5b424f486221",
        "name": "gofly-logo.png",
        "description": null,
        "mime_type": "image/png",
        "collection": "avatar",
        "url": "http://localhost:8000/image/a8c5e843-93a0-4c74-8124-5b424f486221/gofly-logo.png?bg=%23ffffff&fit=fill&h=100&w=100&signature=2c8df879175b40228f44e83cce2205cd2568262f04d6491e87081f9a22b6e5c1"
    },
    "account_statement_pdf_url": "http://localhost:8000/api/company/9/account-statement?expires=1663847535&with-paid=0&signature=20ca2b2cc72b34e4ec6f61ede327c418049b0bdb24ca40f27a1785386dba7bbd",
    "account_statement_with_paid_pdf_url": "http://localhost:8000/api/company/9/account-statement?expires=1663847535&with-paid=1&signature=08799313f988586f831ca3387396447b4234ebc431108c65e1a7d9b1d45770c2",
    "customer_portal_url": "https://example.com/company/PQYLdqm4wR/customer-portal?url=%2Fapi%2Fcompany%2FPQYLdqm4wR%2Fcustomer-portal",
    "credit_balance": "0.00",
    "settings": {
        "autoSendInvoiceReminders": false
    },
    "custom_fields": {},
    "created_at": "2023-09-22T10:15:30.000000Z"
}

Delete a company

delete
/company/{id}

Example response

json
// HTTP 204 No Content

List companies

get
/company

The list endpoint accepts the same parameters as in Retrieve a company and returns a paginated array of the same company object in the data property.

Read more about Pagination, Filtering, Sorting and Includes on the Introduction page.