Skip to main content
Login
Apus Platform
Docs contents
partners

Partners

Business partners — the customers, suppliers and other counterparties your organization trades with — plus their contacts and addresses. Master data shared by sales, purchasing, distribution, finance and CRM. Sync a CRM, an e-invoice provider or an external directory against these endpoints.

GET/v1/partnersScope: partners:read

List partners

Returns a cursor-paginated list of partners. Filter by type or search by name and tax code.

Query parameters
limitoptionalintegerPage size, 1–200 (default 50).
cursoroptionalstringPagination cursor from a previous response.
typeoptionalstringFilter by role: customer or supplier.
searchoptionalstringMatch against name and tax code.
Request
curl "https://api.apusplatform.com/v1/partners" \
  -H "Authorization: Bearer $APUS_TOKEN"
Response
{
  "data": [
    {
      "id": "prt_1a2b",
      "code": "CUST-000142",
      "name": "Cong ty TNHH Thanh Long",
      "type": [
        "customer"
      ],
      "tax_code": "0312345678",
      "email": "ketoan@thanhlong.vn",
      "currency": "VND",
      "active": true,
      "updated_at": "2026-07-12T04:20:11Z"
    }
  ],
  "has_more": true,
  "next_cursor": "crsr_9a10"
}
POST/v1/partnersScope: partners:write

Create a partner

Creates a partner. tax_code, when supplied, must be unique.

Body
namerequiredstringLegal or trading name.
typerequiredstringOne or more roles: customer, supplier.
tax_codeoptionalstringTax identification number (unique).
emailoptionalstringPrimary contact email.
Request
curl -X POST "https://api.apusplatform.com/v1/partners" \
  -H "Authorization: Bearer $APUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Cong ty TNHH Thanh Long",
    "type": [
      "customer"
    ],
    "tax_code": "0312345678",
    "email": "ketoan@thanhlong.vn"
  }'
Response
{
  "id": "prt_1a2b",
  "code": "CUST-000142",
  "created_at": "2026-07-20T02:10:00Z"
}
GET/v1/partners/{id}Scope: partners:read

Retrieve a partner

Returns a single partner by its id, or by tax code (prefix the value with tax_).

Path parameters
idrequiredstringPartner id.
Request
curl "https://api.apusplatform.com/v1/partners/prt_1a2b" \
  -H "Authorization: Bearer $APUS_TOKEN"
Response
{
  "id": "prt_1a2b",
  "code": "CUST-000142",
  "name": "Cong ty TNHH Thanh Long",
  "type": [
    "customer"
  ],
  "tax_code": "0312345678",
  "email": "ketoan@thanhlong.vn",
  "currency": "VND",
  "active": true,
  "updated_at": "2026-07-12T04:20:11Z"
}
PATCH/v1/partners/{id}Scope: partners:write

Update a partner

Updates mutable fields of a partner. Only supplied fields change.

Path parameters
idrequiredstringPartner id.
Body
nameoptionalstringLegal or trading name.
typeoptionalstringOne or more roles: customer, supplier.
emailoptionalstringPrimary contact email.
activeoptionalbooleanActivate or archive the partner.
Request
curl -X PATCH "https://api.apusplatform.com/v1/partners/prt_1a2b" \
  -H "Authorization: Bearer $APUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": [
      "customer",
      "supplier"
    ],
    "email": "muahang@thanhlong.vn"
  }'
Response
{
  "id": "prt_1a2b",
  "code": "CUST-000142",
  "updated_at": "2026-07-20T02:12:00Z"
}
DELETE/v1/partners/{id}Scope: partners:write

Archive a partner

Archives a partner (soft delete). It stays referenced by historical documents.

Path parameters
idrequiredstringPartner id.
Request
curl -X DELETE "https://api.apusplatform.com/v1/partners/{id}" \
  -H "Authorization: Bearer $APUS_TOKEN"
Response
HTTP/1.1 204 No Content
GET/v1/partners/{id}/contactsScope: partners:read

List partner contacts

Returns the people recorded against a partner.

Path parameters
idrequiredstringPartner id.
Request
curl "https://api.apusplatform.com/v1/partners/{id}/contacts" \
  -H "Authorization: Bearer $APUS_TOKEN"
Response
{
  "data": [
    {
      "id": "con_5f6g",
      "name": "Nguyen Thi Mai",
      "email": "mai@thanhlong.vn",
      "phone": "+84 28 3822 1234",
      "role": "Accountant"
    }
  ]
}
POST/v1/partners/{id}/contactsScope: partners:write

Add a contact

Adds a contact person to a partner.

Path parameters
idrequiredstringPartner id.
Body
namerequiredstringFull name.
emailoptionalstringContact email.
phoneoptionalstringContact phone number.
roleoptionalstringJob title or role, e.g. Accountant.
Request
curl -X POST "https://api.apusplatform.com/v1/partners/con_5f6g/contacts" \
  -H "Authorization: Bearer $APUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Nguyen Thi Mai",
    "email": "mai@thanhlong.vn",
    "phone": "+84 28 3822 1234",
    "role": "Accountant"
  }'
Response
{
  "id": "con_5f6g",
  "name": "Nguyen Thi Mai",
  "created_at": "2026-07-20T02:14:00Z"
}
GET/v1/partners/{id}/addressesScope: partners:read

List partner addresses

Returns the billing and shipping addresses recorded against a partner.

Path parameters
idrequiredstringPartner id.
Request
curl "https://api.apusplatform.com/v1/partners/{id}/addresses" \
  -H "Authorization: Bearer $APUS_TOKEN"
Response
{
  "data": [
    {
      "id": "adr_7h8i",
      "type": "billing",
      "line1": "128 Nguyen Hue",
      "city": "Ho Chi Minh City",
      "country": "VN"
    }
  ]
}
POST/v1/partners/{id}/addressesScope: partners:write

Add an address

Adds a billing or shipping address to a partner.

Path parameters
idrequiredstringPartner id.
Body
line1requiredstringStreet address line.
cityoptionalstringCity or province.
countryoptionalstringISO 3166-1 alpha-2 country code.
typeoptionalstringAddress role: billing or shipping.
Request
curl -X POST "https://api.apusplatform.com/v1/partners/adr_7h8i/addresses" \
  -H "Authorization: Bearer $APUS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "line1": "128 Nguyen Hue",
    "city": "Ho Chi Minh City",
    "country": "VN",
    "type": "billing"
  }'
Response
{
  "id": "adr_7h8i",
  "type": "billing",
  "created_at": "2026-07-20T02:16:00Z"
}

Ready to build?

Create an API client in the Account Console to get your credentials, or talk to an integration engineer about your use case.

noindex