A ContractPausedPeriod represents a freeze period applied to a customer’s plan contract (CoworkerContract). Plan freezing lets admins — and optionally customers — suspend a contract for one or more billing cycles without cancelling it.
Freeze dates are always aligned to billing cycle boundaries: PauseFrom is always the first day of the customer’s next billing cycle, and PauseUntil is always the first day of the billing cycle when the plan is due to restart.
While a contract is frozen:
- No charges are generated for the contract for the duration of the freeze.
- The customer’s status reverts to Contact if they have no other active contract.
- No member rates or benefits from the frozen contract apply during the freeze.
- Invoices are still generated on the usual billing day for any purchases (bookings, products) linked to the contract.
Admins can freeze contracts from the customer’s account, via teams, or in bulk from Finance > Contracts. Whether customers can freeze their own plans from the Members Portal is controlled by the AllowContractFreezing setting on the plan (Tariff).
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 ContractPausedPeriod-List role.
Query Parameters
The page number to retrieve.
The number of records per page.
The property name to sort results by (e.g. Name, CreatedOn).
Sort direction. 1 for ascending, -1 for descending.
Filters
ContractPausedPeriod_CoworkerContract
Filter by iD of the customer contract being frozen.
ContractPausedPeriod_CoworkerContract_Quantity
Filter by quantity set on the frozen contract.
ContractPausedPeriod_CoworkerContract_FloorPlanDeskIds
Filter by comma-separated IDs of the floor plan desks assigned to the frozen contract.
ContractPausedPeriod_CoworkerContract_FloorPlanDeskNames
Filter by comma-separated names of the floor plan desks assigned to the frozen contract.
ContractPausedPeriod_CoworkerContract_Tariff_Name
Filter by name of the pricing plan (tariff) the frozen contract is for.
ContractPausedPeriod_CoworkerContract_Coworker_Id
Filter by iD of the customer holding the frozen contract.
ContractPausedPeriod_CoworkerContract_Coworker_FullName
Filter by full name of the customer holding the frozen contract.
ContractPausedPeriod_CoworkerContract_Coworker_BillingName
Filter by billing name of the customer holding the frozen contract.
ContractPausedPeriod_Notes
Filter by optional notes or reason for this freeze period.
ContractPausedPeriod_PauseFrom
Filter by uTC date when the freeze starts. Always falls on the first day of a billing cycle.
ContractPausedPeriod_PauseUntil
Filter by uTC date when the freeze ends. Always falls on the first day of the billing cycle when the plan is due to restart.
ContractPausedPeriod_PauseFromLocal
Filter by location-timezone equivalent of PauseFrom.
ContractPausedPeriod_PauseUntilLocal
Filter by location-timezone equivalent of PauseUntil.
Range Filters
from_ContractPausedPeriod_CoworkerContractQuantity
Filter by quantity set on the frozen contract greater than or equal to this value.
to_ContractPausedPeriod_CoworkerContractQuantity
Filter by quantity set on the frozen contract less than or equal to this value.
from_ContractPausedPeriod_CoworkerContractCoworkerId
Filter by iD of the customer holding the frozen contract greater than or equal to this value.
to_ContractPausedPeriod_CoworkerContractCoworkerId
Filter by iD of the customer holding the frozen contract less than or equal to this value.
from_ContractPausedPeriod_PauseFrom
Filter by uTC date when the freeze starts. Always falls on the first day of a billing cycle greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_PauseFrom
Filter by uTC date when the freeze starts. Always falls on the first day of a billing cycle less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractPausedPeriod_PauseUntil
Filter by uTC date when the freeze ends. Always falls on the first day of the billing cycle when the plan is due to restart greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_PauseUntil
Filter by uTC date when the freeze ends. Always falls on the first day of the billing cycle when the plan is due to restart less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractPausedPeriod_PauseFromLocal
Filter by location-timezone equivalent of PauseFrom greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_PauseFromLocal
Filter by location-timezone equivalent of PauseFrom less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractPausedPeriod_PauseUntilLocal
Filter by location-timezone equivalent of PauseUntil greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_PauseUntilLocal
Filter by location-timezone equivalent of PauseUntil less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ContractPausedPeriod_CreatedOn
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_CreatedOn
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_ContractPausedPeriod_UpdatedOn
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ContractPausedPeriod_UpdatedOn
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/contractpausedperiods?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/contractpausedperiods?ContractPausedPeriod_CreatedOn=example-value&orderBy=CreatedOn&dir=1" \
-H "Authorization: Bearer YOUR_TOKEN"
Range filters
curl -X GET \
"https://spaces.nexudus.com/api/billing/contractpausedperiods?from_ContractPausedPeriod_UpdatedOn=2025-01-01T00:00&to_ContractPausedPeriod_UpdatedOn=2025-12-31T23:59&orderBy=UpdatedOn&dir=-1" \
-H "Authorization: Bearer YOUR_TOKEN"
Response
200
The list of ContractPausedPeriod records matching the query. See the Get one ContractPausedPeriod endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each ContractPausedPeriod. The following fields are not included in the Records[] response: Notes.To get all fields, fetch the full record using the Get one ContractPausedPeriod 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.
Number of records per page.
The field used for sorting.
The sort direction (1 = ascending, -1 = descending).
Index of the first item on the current page.
Index of the last item on the current page.
Total number of matching records across all pages.
Whether there is a next page of results.
Whether there is a previous page of results.
{
"Records": [
{
"CoworkerContractId": 0,
"CoworkerContractQuantity": null,
"CoworkerContractFloorPlanDeskIds": null,
"CoworkerContractFloorPlanDeskNames": null,
"CoworkerContractTariffName": null,
"CoworkerContractCoworkerId": null,
"CoworkerContractCoworkerFullName": null,
"CoworkerContractCoworkerBillingName": null,
"Notes": null,
"PauseFrom": "2025-01-15T10:30:00Z",
"PauseUntil": "2025-01-15T10:30:00Z",
"PauseFromLocal": null,
"PauseUntilLocal": null,
"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": "ContractPausedPeriod 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
}