Skip to main content
GET
/
api
/
billing
/
contractschedules
{
  "Records": [
    {}
  ],
  "CurrentPage": 123,
  "CurrentPageSize": 123,
  "CurrentOrderField": "<string>",
  "CurrentSortDirection": 123,
  "FirstItem": 123,
  "LastItem": 123,
  "TotalItems": 123,
  "TotalPages": 123,
  "HasNextPage": true,
  "HasPreviousPage": true
}
A ContractSchedule defines a future price change for a plan contract (CoworkerContract). On the date specified by ApplyOn, the system automatically updates the contract’s price to the value in Price. Schedules allow operators to pre-configure stepped pricing — for example, an introductory rate for the first few months that transitions to a full rate on a known date — without any manual intervention at the time of the change. Once a schedule has been processed, Applied is set to true and the record becomes read-only.

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 ContractSchedule-List role.

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

ContractSchedule_CoworkerContract
integer
Filter by Coworker Contract Id.
ContractSchedule_CoworkerContract_Quantity
integer
Filter by Coworker Contract Quantity.
ContractSchedule_CoworkerContract_FloorPlanDeskIds
string
Filter by Coworker Contract Floor Plan Desk Ids.
ContractSchedule_CoworkerContract_FloorPlanDeskNames
string
Filter by Coworker Contract Floor Plan Desk Names.
ContractSchedule_CoworkerContract_Tariff_Name
string
Filter by name of the tariff/plan associated with the parent contract.
ContractSchedule_CoworkerContract_Coworker_Id
integer
Filter by Coworker Contract Coworker Id.
ContractSchedule_CoworkerContract_Coworker_FullName
string
Filter by full name of the member holding the parent contract.
ContractSchedule_CoworkerContract_Coworker_BillingName
string
Filter by billing name of the member holding the parent contract.
ContractSchedule_Notes
string
Filter by optional notes or internal comments about this scheduled price change.
ContractSchedule_Price
number
Filter by the new contract price to apply on the scheduled date.
ContractSchedule_ApplyOn
string
Filter by date on which the system will automatically update the contract price to the value in Price.
ContractSchedule_ApplyOnLocal
string
Filter by Apply On Local.
ContractSchedule_Applied
boolean
Filter by true once the price change has been applied to the contract. The record becomes read-only after this point.

Range Filters

from_ContractSchedule_CoworkerContractQuantity
integer
Filter by coworker contract quantity greater than or equal to this value.
to_ContractSchedule_CoworkerContractQuantity
integer
Filter by coworker contract quantity less than or equal to this value.
from_ContractSchedule_CoworkerContractCoworkerId
integer
Filter by coworker contract coworker id greater than or equal to this value.
to_ContractSchedule_CoworkerContractCoworkerId
integer
Filter by coworker contract coworker id less than or equal to this value.
from_ContractSchedule_Price
number
Filter by the new contract price to apply on the scheduled date greater than or equal to this value.
to_ContractSchedule_Price
number
Filter by the new contract price to apply on the scheduled date less than or equal to this value.
from_ContractSchedule_ApplyOn
string
Filter by date on which the system will automatically update the contract price to the value in Price greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractSchedule_ApplyOn
string
Filter by date on which the system will automatically update the contract price to the value in Price less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractSchedule_ApplyOnLocal
string
Filter by apply on local greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractSchedule_ApplyOnLocal
string
Filter by apply on local less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractSchedule_CreatedOn
string
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractSchedule_CreatedOn
string
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_ContractSchedule_UpdatedOn
string
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractSchedule_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/contractschedules?page=1&size=15&orderBy=CreatedOn&dir=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Filtering by CreatedOn

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

Range filters

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

Response

200

Records
ContractSchedule[]
The list of ContractSchedule records matching the query. See the Get one ContractSchedule endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each ContractSchedule. The following fields are not included in the Records[] response: Notes.To get all fields, fetch the full record using the Get one ContractSchedule 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,
      "CoworkerContractCoworkerId": null,
      "CoworkerContractCoworkerFullName": null,
      "CoworkerContractCoworkerBillingName": null,
      "Notes": null,
      "Price": null,
      "ApplyOn": "2025-01-15T10:30:00Z",
      "ApplyOnLocal": null,
      "Applied": false,
      "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": "ContractSchedule Example",
      "LocalizationDetails": null,
      "CustomFields": null
    }
  ],
  "CurrentPageSize": 15,
  "CurrentPage": 1,
  "CurrentOrderField": "CreatedOn",
  "CurrentSortDirection": 1,
  "FirstItem": 1,
  "HasNextPage": false,
  "HasPreviousPage": false,
  "LastItem": 1,
  "PageNumber": 1,
  "PageSize": 15,
  "TotalItems": 1,
  "TotalPages": 1
}