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 ProposalProduct-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
ProposalProduct_Proposal_Coworker_Id
Filter by proposal coworker ID.
ProposalProduct_Proposal_Coworker_Email
Filter by proposal coworker email.
ProposalProduct_Proposal_Coworker_FullName
Filter by proposal coworker full name.
ProposalProduct_Product_Name
Filter by product name.
ProposalProduct_Product_Price
Filter by product price.
ProposalProduct_Product_ApplyProRating
Filter by whether product applies pro-rating.
ProposalProduct_Product_Business_Currency_Code
Filter by product business currency code.
Filter by price override.
ProposalProduct_IsDeposit
Filter by whether this is a deposit.
ProposalProduct_IsContractProduct
Filter by whether this is a contract product.
ProposalProduct_RegularCharge
Filter by whether this is a regular charge.
ProposalProduct_RepeatCycle
Filter by repeat cycle pattern.
ProposalProduct_InvoiceOn
Filter by invoice on date.
ProposalProduct_RepeatFrom
Filter by repeat from date.
ProposalProduct_RepeatUntil
Filter by repeat until date.
ProposalProduct_RepeatUnit
Filter by number of repeat units.
ProposalProduct_ApplyProRating
Filter by apply pro-rating.
Range Filters
from_ProposalProduct_ProductPrice
Filter by product price greater than or equal to this value.
to_ProposalProduct_ProductPrice
Filter by product price less than or equal to this value.
from_ProposalProduct_Quantity
Filter by quantity greater than or equal to this value.
to_ProposalProduct_Quantity
Filter by quantity less than or equal to this value.
from_ProposalProduct_Price
Filter by price override greater than or equal to this value.
Filter by price override less than or equal to this value.
from_ProposalProduct_InvoiceOn
Filter by invoice on date greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ProposalProduct_InvoiceOn
Filter by invoice on date less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ProposalProduct_RepeatFrom
Filter by repeat from date greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ProposalProduct_RepeatFrom
Filter by repeat from date less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ProposalProduct_RepeatUntil
Filter by repeat until date greater than or equal to this value. Format: YYYY-MM-DDTHH:mm.
to_ProposalProduct_RepeatUntil
Filter by repeat until date less than or equal to this value. Format: YYYY-MM-DDTHH:mm.
from_ProposalProduct_RepeatUnit
Filter by number of repeat units greater than or equal to this value.
to_ProposalProduct_RepeatUnit
Filter by number of repeat units less than or equal to this value.
from_ProposalProduct_CreatedOn
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ProposalProduct_CreatedOn
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_ProposalProduct_UpdatedOn
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_ProposalProduct_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/proposalproducts?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/proposalproducts?ProposalProduct_CreatedOn=example-value&orderBy=CreatedOn&dir=1" \
-H "Authorization: Bearer YOUR_TOKEN"
Range filters
curl -X GET \
"https://spaces.nexudus.com/api/billing/proposalproducts?from_ProposalProduct_UpdatedOn=2025-01-01T00:00&to_ProposalProduct_UpdatedOn=2025-12-31T23:59&orderBy=UpdatedOn&dir=-1" \
-H "Authorization: Bearer YOUR_TOKEN"
Response
200
The list of ProposalProduct records matching the query. See the Get one ProposalProduct endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each ProposalProduct. The following fields are not included in the Records[] response: RepeatCycle, Notes.To get all fields, fetch the full record using the Get one ProposalProduct 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": [
{
"ProposalId": 0,
"ProposalCoworkerId": null,
"ProposalCoworkerEmail": null,
"ProposalCoworkerFullName": null,
"ProductId": 0,
"ProductName": null,
"ProductPrice": 0,
"ProductApplyProRating": null,
"ProductBusinessCurrencyCode": null,
"Quantity": 0,
"Price": null,
"IsDeposit": false,
"IsContractProduct": false,
"RegularCharge": false,
"RepeatCycle": 0,
"InvoiceOn": null,
"RepeatFrom": null,
"RepeatUntil": null,
"RepeatUnit": null,
"ApplyProRating": false,
"Notes": 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": "ProposalProduct 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
}