### GET Aging Report Request Example Source: https://partner-api.docs.chronogolf.com/ This cURL command demonstrates how to request aging report data for a specific organization, including filtering by cut-off date and type, sorting, and pagination. ```curl curl --location -g 'https://partner-staging.chronogolf.com/partner_api/v2/organizations/{{organization_id}}/aging_report?filter[cut_off_date]=2026-02-11&filter[type]=Customership&sort=-over_30&page[number]=1&page[size]=10' \ --header 'Accept: application/vnd.api+json' \ --header 'Authorization: bearer ' ``` -------------------------------- ### Create a price override Source: https://partner-api.docs.chronogolf.com/ JSON payload and cURL request for creating a new price override. The start time is inclusive and the end time is exclusive. ```json { "data": { "type": "price_override", "attributes": { "starts_at": "2020-02-25 06:00:00", "ends_at": "2020-02-25 20:00:00", "price": 45.87 }, "relationships": { "product": { "data": { "type": "product", "id": "52c699cd-37b5-478e-8565-153fd5f31520" } }, "course": { "data": { "type": "course", "id": "7ba80346-ff84-4b0d-abb6-b2ba66b8af78" } }, "player_type": { "data": { "type": "player_type", "id": "407d6028-af09-4869-adf9-6be382da8053" } } } } } ``` ```bash curl --location -g 'https://partner-staging.chronogolf.com/partner_api/v2/organizations/{{organization_id}}/price_overrides' \ --header 'Accept: application/vnd.api+json' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --data '{ "data": { "type": "price_override", "attributes": { "starts_at": "2020-02-25 06:00:00", "ends_at": "2020-02-25 20:00:00", "price": 45.87 }, "relationships": { "product": { "data": { "type": "product", "id": "52c699cd-37b5-478e-8565-153fd5f31520" } }, "course": { "data": { "type": "course", "id": "7ba80346-ff84-4b0d-abb6-b2ba66b8af78" } }, "player_type": { "data": { "type": "player_type", "id": "407d6028-af09-4869-adf9-6be382da8053" } } } } }' ``` -------------------------------- ### GET /partner_api/v2/price_overrides/:id Source: https://partner-api.docs.chronogolf.com/ Retrieves details for a specific price override. ```APIDOC ## GET /partner_api/v2/price_overrides/:id ### Description Retrieves a specific price override record. ### Method GET ### Endpoint /partner_api/v2/price_overrides/:id ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the price override. ``` -------------------------------- ### GET /partner_api/v2/organizations/{organization_id}/aging_report Source: https://partner-api.docs.chronogolf.com/ Retrieves a paginated list of aging report entries for house account holders. Includes customer balance, credit limit, and aging buckets. ```APIDOC ## GET /partner_api/v2/organizations/{organization_id}/aging_report ### Description Returns a paginated list of aging report entries for all house account holders at the specified organization (club). Each entry includes the customer's current balance, credit limit, and a breakdown of how old the outstanding balance is across 30-day aging buckets. ### Method GET ### Endpoint `/partner_api/v2/organizations/{organization_id}/aging_report` ### Parameters #### Path Parameters - **organization_id** (string) - Required - The unique identifier for the organization. #### Query Parameters - **filter[cut_off_date]** (string) - Optional - The reference date for aging calculations (YYYY-MM-DD). MUST be less than today's date. Defaults to yesterday in the club's timezone. - **filter[type]** (string) - Optional - Filter by holder type: `Customership`, `Reseller`, or `All`. Defaults to `All`. - **sort** (string) - Optional - Sort field. Options: `total`, `last_30`, `over_30`, `over_60`, `over_90`, `over_120`. Prefix with `-` for descending (e.g. `-total`). Defaults to `total` ascending. - **page[number]** (integer) - Optional - Page number. Defaults to 1. - **page[size]** (integer) - Optional - Results per page. Defaults to 25. ### Request Example ```json { "example": "Request body is empty for this GET request." } ``` ### Response #### Success Response (200) - **data** (array) - An array of aging report entry objects. - **id** (string) - Customer UUID - **ref** (string) - Customer reference code - **holder_name** (string) - Full name of the account holder - **member_no** (string) - Membership number (null if not set) - **holder_type** (string) - `Customership` or `Reseller` - **total** (number) - Net balance (deposits minus charges) - **deposit** (number) - Total credits/deposits - **owing** (number) - Total debits/charges - **last_30** (number) - Balance accrued in the last 30 days - **over_30** (number) - Balance accrued 30-60 days ago - **over_60** (number) - Balance accrued 60-90 days ago - **over_90** (number) - Balance accrued 90-120 days ago - **over_120** (number) - Balance older than 120 days - **credit_limit** (number) - Account credit limit - **meta** (object) - Pagination metadata. - **page** (integer) - Current page number. - **page_size** (integer) - Number of results per page. - **total** (integer) - Total number of results. - **total_pages** (integer) - Total number of pages. #### Response Example ```json { "data": [ { "id": "1b2d9d52-c879-4d0b-8c5a-0c7d7fe52e8d", "type": "aging_report_entry", "attributes": { "ref": "7C7R-9J3O", "holder_name": "Billy Allen", "member_no": null, "holder_type": "Customership", "total": 0, "deposit": 0, "owing": 0, "last_30": 0, "over_30": 0, "over_60": 0, "over_90": 0, "over_120": 0, "credit_limit": 1000 } } ], "meta": { "page": 1, "page_size": 10, "total": 6, "total_pages": 1 } } ``` ### Error Responses - **400 Bad Request**: Organization is not a club, or house accounts V2 is not enabled. - **401 Unauthorized**: Missing or invalid access token. - **403 Forbidden**: Integrator is archived or lacks permission. - **503 Service Unavailable**: Endpoint is temporarily disabled. ``` -------------------------------- ### Aging Report Response Example Source: https://partner-api.docs.chronogolf.com/ This JSON object represents a successful response from the aging report endpoint, showing a paginated list of aging report entries with their attributes and meta information. ```json { "data": [ { "id": "1b2d9d52-c879-4d0b-8c5a-0c7d7fe52e8d", "type": "aging_report_entry", "attributes": { "ref": "7C7R-9J3O", "holder_name": "Billy Allen", "member_no": null, "holder_type": "Customership", "total": 0, "deposit": 0, "owing": 0, "last_30": 0, "over_30": 0, "over_60": 0, "over_90": 0, "over_120": 0, "credit_limit": 1000 } } ], "meta": { "page": 1, "page_size": 10, "total": 6, "total_pages": 1 } } ``` -------------------------------- ### POST /partner_api/v2/organizations/{{organization_id}}/price_overrides Source: https://partner-api.docs.chronogolf.com/ Create a price override to set a specific price for a product, course, and player type, overriding the standard price sheet. ```APIDOC ## POST /partner_api/v2/organizations/{{organization_id}}/price_overrides ### Description A price override enables an integrator to set a price for a product, for a specific course and player type. This price overrides the price set in the price sheet for this given player type/course/time combination. Products can be listed and their IDs can be retrieved via the products endpoint. Overrides apply for greenfees and carts. Multiple price overrides can exist at once for a given product, course and player type combination. Overrides of shorter duration take precedence over ones with longer duration. A price override start time is inclusive, end time is exclusive (up to but not including X timestamp). ### Method POST ### Endpoint https://partner-staging.chronogolf.com/partner_api/v2/organizations/{{organization_id}}/price_overrides ### Headers - **Accept**: application/vnd.api+json - **Authorization**: Bearer - **Content-Type**: application/json ### Request Body - **data** (object) - Required - The main object containing the price override details. - **type** (string) - Required - Must be "price_override". - **attributes** (object) - Required - Contains the pricing and timing details. - **starts_at** (string) - Required - The start date and time of the override (inclusive), format: YYYY-MM-DD HH:MM:SS. - **ends_at** (string) - Required - The end date and time of the override (exclusive), format: YYYY-MM-DD HH:MM:SS. - **price** (number) - Required - The override price. - **relationships** (object) - Required - Links to the related entities. - **product** (object) - Required - The product for which the override applies. - **data** (object) - Required. - **type** (string) - Required - Must be "product". - **id** (string) - Required - The ID of the product. - **course** (object) - Required - The course for which the override applies. - **data** (object) - Required. - **type** (string) - Required - Must be "course". - **id** (string) - Required - The ID of the course. - **player_type** (object) - Required - The player type for which the override applies. - **data** (object) - Required. - **type** (string) - Required - Must be "player_type". - **id** (string) - Required - The ID of the player type. ### Request Example ```json { "data": { "type": "price_override", "attributes": { "starts_at": "2020-02-25 06:00:00", "ends_at": "2020-02-25 20:00:00", "price": 45.87 }, "relationships": { "product": { "data": { "type": "product", "id": "52c699cd-37b5-478e-8565-153fd5f31520" } }, "course": { "data": { "type": "course", "id": "7ba80346-ff84-4b0d-abb6-b2ba66b8af78" } }, "player_type": { "data": { "type": "player_type", "id": "407d6028-af09-4869-adf9-6be382da8053" } } } } } ``` ### Response This request does not return a response body. ``` -------------------------------- ### Retrieve a Specific Price Override Source: https://partner-api.docs.chronogolf.com/ Use this endpoint to fetch details of a specific price override using its ID. Ensure the Authorization header is correctly set. ```curl curl --location -g 'https://partner-staging.chronogolf.com/partner_api/v2/price_overrides/{{price_override_id}}' \ --header 'Accept: application/vnd.api+json' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' ``` -------------------------------- ### Reservation Management Endpoints Source: https://partner-api.docs.chronogolf.com/ Endpoints for creating, retrieving, updating, and deleting reservations. ```APIDOC ## POST /partner_api/v2/organizations/:organization_id/reservations ## GET /partner_api/v2/organizations/:organization_id/reservations ## GET /partner_api/v2/reservations/:id ## PATCH /partner_api/v2/reservations/:id ## PUT /partner_api/v2/reservations/:id ## DELETE /partner_api/v2/reservations/:id ### Description Manage golf reservations for organizations. ``` -------------------------------- ### Aging Report Source: https://partner-api.docs.chronogolf.com/ Provides a per-customer breakdown of outstanding house account balances and their aging buckets. ```APIDOC ## Aging Report ### Description The Aging Report provides a per-customer breakdown of outstanding house account balances and how long those balances have been owed. Each entry in the report represents a single customer at a club, showing their total balance split into aging buckets: last 30 days, 30-60 days, 60-90 days, 90-120 days, and over 120 days. The aging report is only available for clubs with house accounts V2 enabled. ### Endpoint [Specific endpoint for the Aging Report is not provided in the source text.] ### Method [HTTP method for the Aging Report is not provided in the source text.] ### Parameters [Parameters for the Aging Report are not provided in the source text.] ### Response [Response details for the Aging Report are not provided in the source text.] ``` -------------------------------- ### DELETE /partner_api/v2/price_overrides/{{price_override_id}} Source: https://partner-api.docs.chronogolf.com/ Delete a specific price override using its ID. ```APIDOC ## DELETE /partner_api/v2/price_overrides/{{price_override_id}} ### Description Deletes a specific price override identified by its unique ID. ### Method DELETE ### Endpoint https://partner-staging.chronogolf.com/partner_api/v2/price_overrides/{{price_override_id}} ### Headers - **Accept**: application/vnd.api+json - **Authorization**: Bearer - **Content-Type**: application/json ### Response This request does not return a response body. ``` -------------------------------- ### Customer Management Endpoints Source: https://partner-api.docs.chronogolf.com/ Endpoints for creating, retrieving, and updating customer information. ```APIDOC ## POST /partner_api/v2/organizations/:organization_id/customers ## GET /partner_api/v2/organizations/:organization_id/customers ## GET /partner_api/v2/customers/:id ## PATCH /partner_api/v2/customers/:id ## PUT /partner_api/v2/customers/:id ### Description Manage customer profiles within specific organizations. ### Parameters #### Path Parameters - **organization_id** (string) - Required - The ID of the organization. - **id** (string) - Required - The ID of the customer. ``` -------------------------------- ### Delete a price override Source: https://partner-api.docs.chronogolf.com/ cURL request to delete an existing price override by its ID. ```bash curl --location -g --request DELETE 'https://partner-staging.chronogolf.com/partner_api/v2/price_overrides/{{price_override_id}}' \ --header 'Accept: application/vnd.api+json' \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.