Skip to main content
GET
/
api
/
billing
/
contractcontacts
{
  "Records": [
    {}
  ],
  "CurrentPage": 123,
  "CurrentPageSize": 123,
  "CurrentOrderField": "<string>",
  "CurrentSortDirection": 123,
  "FirstItem": 123,
  "LastItem": 123,
  "TotalItems": 123,
  "TotalPages": 123,
  "HasNextPage": true,
  "HasPreviousPage": true
}
A ContractContact is a key contact entry on a virtual office contract (CoworkerContract). Contacts can be directors, company aliases, or nominated recipients, and are used to identify, validate, and handle mail and deliveries addressed to anyone connected to a virtual office contract. Each entry can be linked to an existing coworker via CoworkerId, in which case the coworker’s name and email are resolved automatically. Alternatively, provide FullName and Email directly for contacts who do not have a coworker record. Use ContractContactType to classify the contact:
TypeDescription
DirectorA director of the company registered under the virtual office contract
CompanyAliasA trading name or alias used by the company
NominatedRecipientA person authorised to receive mail and deliveries on behalf of the company

Authentication

This endpoint requires OAuth2 authentication. Include a valid bearer token in the Authorization header. The authenticated user must be a full unrestricted administrator or have the ContractContact-List role.

Enums

ValueName
0None
1Director
2CompanyAlias
3NominatedRecipient

Query Parameters

Pagination & Sorting

page
integer
default:"1"
The page number to retrieve.
size
integer
default:"25"
The number of records per page.
orderBy
string
The property name to sort results by (e.g. Name, CreatedOn).
dir
integer
Sort direction. 1 for ascending, -1 for descending.

Filters

ContractContact_CoworkerContract
integer
Filter by Coworker Contract Id.
ContractContact_CoworkerContract_Quantity
integer
Filter by Coworker Contract Quantity.
ContractContact_CoworkerContract_FloorPlanDeskIds
string
Filter by Coworker Contract Floor Plan Desk Ids.
ContractContact_CoworkerContract_FloorPlanDeskNames
string
Filter by Coworker Contract Floor Plan Desk Names.
ContractContact_CoworkerContract_Tariff_Name
string
Filter by plan name of the associated virtual office contract.
ContractContact_Coworker
integer
Filter by Coworker Id.
ContractContact_Coworker_FullName
string
Filter by full name of the linked coworker.
ContractContact_Coworker_CompanyName
string
Filter by company name of the linked coworker.
ContractContact_Coworker_BillingName
string
Filter by billing name of the linked coworker.
ContractContact_Coworker_Email
string
Filter by email address of the linked coworker.
ContractContact_Coworker_Active
boolean
Filter by Coworker Active.
ContractContact_Email
string
Filter by email address of the contact. Used when the contact is not linked to a coworker record.
ContractContact_FullName
string
Filter by full name of the contact. Used when the contact is not linked to a coworker record.
ContractContact_DateOfBirth
string
Filter by date of birth. Used for identity verification purposes.
ContractContact_Address
string
Filter by address.
ContractContact_PostCode
string
Filter by post code.
ContractContact_CityName
string
Filter by city name.
ContractContact_State
string
Filter by state.
ContractContact_Country
integer
Filter by Country Id.
ContractContact_Country_Name
string
Filter by country name.
ContractContact_PhoneNumber
string
Filter by phone number.
ContractContact_Notes
string
Filter by notes.
ContractContact_ContractContactType
integer
Filter by role of this contact: Director (a company director), CompanyAlias (a trading name), or NominatedRecipient (authorised to receive mail on behalf of the company).

Range Filters

from_ContractContact_CoworkerContractQuantity
integer
Filter by coworker contract quantity greater than or equal to this value.
to_ContractContact_CoworkerContractQuantity
integer
Filter by coworker contract quantity less than or equal to this value.
from_ContractContact_DateOfBirth
string
Filter by date of birth. Used for identity verification purposes greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractContact_DateOfBirth
string
Filter by date of birth. Used for identity verification purposes less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractContact_CreatedOn
string
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractContact_CreatedOn
string
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_ContractContact_UpdatedOn
string
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractContact_UpdatedOn
string
Filter records updated on or before this date. Format: YYYY-MM-DDTHH:mm.

Code Examples

Simple listing

curl -X GET \
  "https://spaces.nexudus.com/api/billing/contractcontacts?page=1&size=15&orderBy=FullName&dir=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Filtering by FullName

curl -X GET \
  "https://spaces.nexudus.com/api/billing/contractcontacts?ContractContact_FullName=example-value&orderBy=FullName&dir=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Range filters

curl -X GET \
  "https://spaces.nexudus.com/api/billing/contractcontacts?from_ContractContact_UpdatedOn=2025-01-01T00:00&to_ContractContact_UpdatedOn=2025-12-31T23:59&orderBy=UpdatedOn&dir=-1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response

200

Records
ContractContact[]
The list of ContractContact records matching the query. See the Get one ContractContact endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each ContractContact. The following fields are not included in the Records[] response: Address, PostCode, CityName, State, Notes.To get all fields, fetch the full record using the Get one ContractContact endpoint.Important for updates: When updating a record via PUT, always retrieve the full record with a GET request first, apply your changes to that complete data, and then send the updated record. Do not use data from a listing response as the base for a PUT request, as missing fields may be unintentionally cleared.
CurrentPage
integer
Current page number.
CurrentPageSize
integer
Number of records per page.
CurrentOrderField
string
The field used for sorting.
CurrentSortDirection
integer
The sort direction (1 = ascending, -1 = descending).
FirstItem
integer
Index of the first item on the current page.
LastItem
integer
Index of the last item on the current page.
TotalItems
integer
Total number of matching records across all pages.
TotalPages
integer
Total number of pages.
HasNextPage
boolean
Whether there is a next page of results.
HasPreviousPage
boolean
Whether there is a previous page of results.
Example Response
{
  "Records": [
    {
      "CoworkerContractId": 0,
      "CoworkerContractQuantity": null,
      "CoworkerContractFloorPlanDeskIds": null,
      "CoworkerContractFloorPlanDeskNames": null,
      "CoworkerContractTariffName": null,
      "CoworkerId": null,
      "CoworkerFullName": null,
      "CoworkerCompanyName": null,
      "CoworkerBillingName": null,
      "CoworkerEmail": null,
      "CoworkerActive": null,
      "Email": null,
      "FullName": "",
      "DateOfBirth": null,
      "Address": null,
      "PostCode": null,
      "CityName": null,
      "State": null,
      "CountryId": null,
      "CountryName": null,
      "PhoneNumber": null,
      "Notes": null,
      "ContractContactType": 0,
      "Id": 87654321,
      "UpdatedOn": "2025-01-15T10:30:00Z",
      "CreatedOn": "2025-01-10T08:00:00Z",
      "UniqueId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "UpdatedBy": "admin@example.com",
      "IsNew": false,
      "SystemId": null,
      "ToStringText": "ContractContact Example",
      "LocalizationDetails": null,
      "CustomFields": null
    }
  ],
  "CurrentPageSize": 15,
  "CurrentPage": 1,
  "CurrentOrderField": "FullName",
  "CurrentSortDirection": 1,
  "FirstItem": 1,
  "HasNextPage": false,
  "HasPreviousPage": false,
  "LastItem": 1,
  "PageNumber": 1,
  "PageSize": 15,
  "TotalItems": 1,
  "TotalPages": 1
}