# https://developers.bigchange.com/docs/rest/api-reference llms-full.txt ## BigChange API Documentation [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference#__docusaurus_skipToContent_fallback) On this page ## Introduction [​](https://developers.bigchange.com/docs/rest/api-reference\#introduction "Direct link to Introduction") The **BigChange API** is organised around [REST](http://en.wikipedia.org/wiki/Representational_State_Transfer). Our API has predictable resource-oriented URLs, accepts [JSON](http://www.json.org/) request bodies, returns JSON-encoded responses, and uses standard HTTP response codes and verbs. Something missing? Our documentation is a priority to us and we strive to constantly improve it. Please reach out if you find an inaccurancy or have a suggestion on how we might make things better. ## Authentication [​](https://developers.bigchange.com/docs/rest/api-reference\#authentication "Direct link to Authentication") ### Step 1 - Obtain credentials [​](https://developers.bigchange.com/docs/rest/api-reference\#step-1---obtain-credentials "Direct link to Step 1 - Obtain credentials") BigChange uses [OAuth 2.0](http://oauth.net/2/) and the [Client Credentials Grant](https://tools.ietf.org/html/rfc6749#section-4.4) to provide authentication for [machine to machine](https://www.techslang.com/definition/what-is-machine-to-machine-authentication/#:~:text=Machine%2Dto%2Dmachine%20authentication%20refers,are%20running%20out%20of%20stock.) use cases for all API endpoints. To gain access, you must [register the details of your application](https://developers.bigchange.com/docs/rest/register) on the platform. Once approved, the application will be granted access and provided a [client ID and client secret](https://www.oauth.com/oauth2-servers/client-registration/client-id-secret/). It is critical that you safely store these credentials in a manner appropriate to the development platform you are using. ### Step 2 - Request access token [​](https://developers.bigchange.com/docs/rest/api-reference\#step-2---request-access-token "Direct link to Step 2 - Request access token") Your application client id and client secret can now be exchanged for an [access token](https://oauth.net/2/access-tokens/), providing short-lived credentials for your application to access the API. To obtain an access token, you will need to make a `POST` request to our [token endpoint](https://developers.bigchange.com/docs/rest/auth-proxy/get-an-access-token). ### Step 3 - Call the API [​](https://developers.bigchange.com/docs/rest/api-reference\#step-3---call-the-api "Direct link to Step 3 - Call the API") Your application should then pass the retrieved access token as a Bearer token in the `authorization` header of your HTTP request to any of our documented API endpoints: curl / cURL ```codeBlockLines_e6Vv curl --request GET \ --url https://api.bigchange.com/v1/contacts \ --header 'authorization: Bearer ACCESS_TOKEN' \ --header 'content-type: application/json' \ --header 'customer-id: 14532' ``` Accessing Customer Data You'll also need to provide a `customer-id` header in every request. This will be provided to you when a BigChange customer has approved that your application can access their data. During development phase, we recommend that you use the **sandbox customer id** you will be provided. ## Requests [​](https://developers.bigchange.com/docs/rest/api-reference\#requests "Direct link to Requests") ### HTTP Verbs [​](https://developers.bigchange.com/docs/rest/api-reference\#http-verbs "Direct link to HTTP Verbs") Where possible, the BigChange REST API strives to use appropriate [HTTP verbs](https://restfulapi.net/http-methods/) for each action. - **GET:** Used to fetch a specific or a collection of resources. - **POST:** Used to create a new resource. - **PUT:** Used to update a existing resource. - **PATCH:** Used to partially update an existing resource. - **DELETE:** Used to delete resources. ### Creating resources [​](https://developers.bigchange.com/docs/rest/api-reference\#creating-resources "Direct link to Creating resources") The REST API creates resources by using requests aligned to the `POST` verb. Successful responses do not usually include the newly created resource in their response payload. Instead, the `id` of the new resource will be provided in the response body, alongside the the `location` header, providing the URL of the endpoint where the newly created resource can be obtained: JSON response header ```codeBlockLines_e6Vv api-supported-versions: 1.0 date: Wed,21 Jun 2023 10:56:47 GMT location: api-url-here/v1/contacts/14512231 x-powered-by: ASP.NET ``` ### Updating resources [​](https://developers.bigchange.com/docs/rest/api-reference\#updating-resources "Direct link to Updating resources") The API uses both `PUT` and `PATCH` verbs to update resources, each used for different use cases and behaviours. - `PUT` endpoints are generally used to update data that needs to change at the same time. Where request payloads can have both required and optional attributes, the latter will be set to a default value when omitted in a request. Every documented attribute in a PUT request body payload will replace any existing state, regardless of whether your request included it. - `PATCH` endpoints are used to update data that can change independently. PATCH request payload attributes are entirely optional and you can provide as much or as little of the payload, depending on the data your application needs to update. Only the attributes included in a PATCH request will replace any existing state. All other state will be left untouched. ## Responses [​](https://developers.bigchange.com/docs/rest/api-reference\#responses "Direct link to Responses") ### Status codes [​](https://developers.bigchange.com/docs/rest/api-reference\#status-codes "Direct link to Status codes") The BigChange API makes use of standard [HTTP status codes](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes) to indicate the outcome of a request. | Code | Description | | --- | --- | | 200 - OK | The request has been fulfilled. | | 201 - Created | The request has been fulfilled and a new resource has been created. | | 204 - No Content | The request has been fulfilled but there is no need to send any data back. | | 400 - Bad Request | The request was badly formatted and/or not understood by the server. | | 401 - Unauthorized | The provided authentication credentials are incorrect or not present. | | 403 - Forbidden | The request lacks authentication credentials with the permissions to fulfill the request | | 404 - Not Found | The request could not locate a resource referenced by the URL. | | 429 - Too Many Requests | The request was not accepted because the application has exceeded the rate limit. | | 500 - Internal Error | The request triggered an unexpected error which will be logged and investigated. | ### Errors [​](https://developers.bigchange.com/docs/rest/api-reference\#errors "Direct link to Errors") When a request cannot be fulfilled, the API will return the appropriate status code and message, as well as more detailed information in the response body as structured below. JSON response body ```codeBlockLines_e6Vv { "status": 404, "title": "The Contact with id 12345 was not found.", } ``` ## Eventual Consistency [​](https://developers.bigchange.com/docs/rest/api-reference\#eventual-consistency "Direct link to Eventual Consistency") Our API operates on an eventual consistency model, meaning that write operations might not be immediately reflected by subsequent reads. Reads will generally be consistent within a few milliseconds, but this can take longer. Integrators should design their system to be resilient to delays in read consistency. This can be achieved by retrying after a short delay when an expected change isn't yet visible. ## Versioning [​](https://developers.bigchange.com/docs/rest/api-reference\#versioning "Direct link to Versioning") The BigChange REST API uses a [URI based versioning](https://restfulapi.net/versioning/) scheme. **The current API version is v1.** The API will evolve over time and whilst every effort is made to develop in an unimpactful way, there may be situations where we need to make breaking changes and publish a new API version. We consider breaking changes to be: - Renaming or removing an existing field or endpoint - Changing the URL structure of an existing endpoint - Changing the parameters that an existing endpoint provides - Changing error response codes that an endpoint provides - Modifying or adding a new validation to an existing resource - Changing the data type of an existing field - Requiring a parameter that wasn't previously required Where breaking change is necessary a new version of the API will be published and documented. Older API versions will remain functional for a determined amount of time to ensure that existing integrations can continue to operate uninterrupted. - [Introduction](https://developers.bigchange.com/docs/rest/api-reference#introduction) - [Authentication](https://developers.bigchange.com/docs/rest/api-reference#authentication) - [Step 1 - Obtain credentials](https://developers.bigchange.com/docs/rest/api-reference#step-1---obtain-credentials) - [Step 2 - Request access token](https://developers.bigchange.com/docs/rest/api-reference#step-2---request-access-token) - [Step 3 - Call the API](https://developers.bigchange.com/docs/rest/api-reference#step-3---call-the-api) - [Requests](https://developers.bigchange.com/docs/rest/api-reference#requests) - [HTTP Verbs](https://developers.bigchange.com/docs/rest/api-reference#http-verbs) - [Creating resources](https://developers.bigchange.com/docs/rest/api-reference#creating-resources) - [Updating resources](https://developers.bigchange.com/docs/rest/api-reference#updating-resources) - [Responses](https://developers.bigchange.com/docs/rest/api-reference#responses) - [Status codes](https://developers.bigchange.com/docs/rest/api-reference#status-codes) - [Errors](https://developers.bigchange.com/docs/rest/api-reference#errors) - [Eventual Consistency](https://developers.bigchange.com/docs/rest/api-reference#eventual-consistency) - [Versioning](https://developers.bigchange.com/docs/rest/api-reference#versioning) ## Cancel a Job API [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference/cancel-a-job#__docusaurus_skipToContent_fallback) # Cancel a job ``` PUT https://api.bigchange.com/v1/jobs/:jobId/cancel ``` Cancels a specific job. The job cannot be cancelled if it has already been started, suspended or completed (required scope jobs:write) ## Request [​](https://developers.bigchange.com/docs/rest/api-reference/cancel-a-job\#request "Direct link to Request") ### Path Parameters **jobId** int64required ### Header Parameters **Customer-Id** int64required The customer identifier - application/json ### Body **reason** stringnullable A textual reason as to why the job is cancelled **Example:** `Customer no longer requires the work` ## Responses [​](https://developers.bigchange.com/docs/rest/api-reference/cancel-a-job\#responses "Direct link to Responses") - 204 - 400 - 403 - 404 - 422 - 500 No Content Bad Request - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Forbidden - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Not Found - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Client Error - application/problem+json - Schema - Example (auto) **Schema** **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **property name\*** any ```codeBlockLines_e6Vv { "errors": {}, "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Server Error - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` #### Authorization: http ``` name: bearertype: httpdescription: Enter the access token only.scheme: bearerbearerFormat: JWT ``` - csharp - curl - dart - go - http - java - javascript - kotlin - c - nodejs - objective-c - ocaml - php - powershell - python - r - ruby - rust - shell - swift - HTTPCLIENT - RESTSHARP ```openapi-explorer__code-block-lines openapi-explorer__code-block-lines-numbering var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Put, "https://api.bigchange.com/v1/jobs/:jobId/cancel"); request.Headers.Add("Authorization", "Bearer "); var content = new StringContent("{\n \"reason\": \"Customer no longer requires the work\"\n}", null, "application/json"); request.Content = content; var response = await client.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync()); ``` Request Collapse all Base URL Edit https://api.bigchange.com Auth Bearer Token Parameters jobId — pathrequired Customer-Id — headerrequired Body ``` { "reason": "Customer no longer requires the work" } ``` Send API Request ResponseClear Click the `Send API Request` button above and see the response here! ## Get Note Type [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference/get-a-note-type#__docusaurus_skipToContent_fallback) # Get a note type ``` GET https://api.bigchange.com/v1/noteTypes/:noteTypeId ``` Retrieve the details of a single note type (required scope notes:read) ## Request [​](https://developers.bigchange.com/docs/rest/api-reference/get-a-note-type\#request "Direct link to Request") ### Path Parameters **noteTypeId** int64required **Possible values:** `>= 1` The unique identifer of the note type ### Header Parameters **Customer-Id** int64required The customer identifier ## Responses [​](https://developers.bigchange.com/docs/rest/api-reference/get-a-note-type\#responses "Direct link to Responses") - 200 - 400 - 403 - 404 - 500 Success - application/json - Schema - Example (auto) **Schema** **id** int64 The unique identifier of the note type **Example:** `5514123` **name** string The name of the note type **Example:** `Complaint` **defaultOwnedByUserId** int64nullable The default owner for notes of this type **Example:** `5514123` **createdAt** date-time The UTC timestamp of when this note type was created **Example:** `2022-11-29T16:50:16.0000000+00:00` ```codeBlockLines_e6Vv { "id": 5514123, "name": "Complaint", "defaultOwnedByUserId": 5514123, "createdAt": "2022-11-29T16:50:16.0000000+00:00" } ``` Bad Request - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Forbidden - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Not Found - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Server Error - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` #### Authorization: http ``` name: bearertype: httpdescription: Enter the access token only.scheme: bearerbearerFormat: JWT ``` - csharp - curl - dart - go - http - java - javascript - kotlin - c - nodejs - objective-c - ocaml - php - powershell - python - r - ruby - rust - shell - swift - HTTPCLIENT - RESTSHARP ```openapi-explorer__code-block-lines openapi-explorer__code-block-lines-numbering var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://api.bigchange.com/v1/noteTypes/:noteTypeId"); request.Headers.Add("Accept", "application/json"); request.Headers.Add("Authorization", "Bearer "); var response = await client.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync()); ``` Request Collapse all Base URL Edit https://api.bigchange.com Auth Bearer Token Parameters noteTypeId — pathrequired Customer-Id — headerrequired Send API Request ResponseClear Click the `Send API Request` button above and see the response here! ## Delete Job Worksheet Answer [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference/delete-a-job-worksheet-answer#__docusaurus_skipToContent_fallback) # Delete a job worksheet answer ``` DELETE https://api.bigchange.com/v1/jobs/:jobId/worksheetQuestions/:questionId/worksheetAnswer ``` Deletes a worksheet answer for a given worksheet question for a given job (required scope worksheets:write) ## Request [​](https://developers.bigchange.com/docs/rest/api-reference/delete-a-job-worksheet-answer\#request "Direct link to Request") ### Path Parameters **jobId** int64required The identifier of the job. **questionId** int64required The identifier of the question. ### Header Parameters **Customer-Id** int64required The customer identifier ## Responses [​](https://developers.bigchange.com/docs/rest/api-reference/delete-a-job-worksheet-answer\#responses "Direct link to Responses") - 204 - 400 - 403 - 404 - 422 No Content Bad Request - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Forbidden - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Not Found - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Client Error - application/problem+json - Schema - Example (auto) **Schema** **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **property name\*** any ```codeBlockLines_e6Vv { "errors": {}, "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` #### Authorization: http ``` name: bearertype: httpdescription: Enter the access token only.scheme: bearerbearerFormat: JWT ``` - csharp - curl - dart - go - http - java - javascript - kotlin - c - nodejs - objective-c - ocaml - php - powershell - python - r - ruby - rust - shell - swift - HTTPCLIENT - RESTSHARP ```openapi-explorer__code-block-lines openapi-explorer__code-block-lines-numbering var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Delete, "https://api.bigchange.com/v1/jobs/:jobId/worksheetQuestions/:questionId/worksheetAnswer"); request.Headers.Add("Authorization", "Bearer "); var response = await client.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync()); ``` Request Collapse all Base URL Edit https://api.bigchange.com Auth Bearer Token Parameters jobId — pathrequired questionId — pathrequired Customer-Id — headerrequired Send API Request ResponseClear Click the `Send API Request` button above and see the response here! ## Job Types List [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference/get-a-list-of-job-types#__docusaurus_skipToContent_fallback) # Get a list of job types ``` GET https://api.bigchange.com/v1/jobTypes ``` Retrieve a paged collection of job types (required scope jobs:read) ## Request [​](https://developers.bigchange.com/docs/rest/api-reference/get-a-list-of-job-types\#request "Direct link to Request") ### Query Parameters **sortBy** JobTypeSortOptions **Possible values:** \[ `name`\] The field to sort items in the page by **direction** SortDirection **Possible values:** \[ `ascending`, `descending`\] The direction to apply the sort **id** int64\[\] Only return job types where `id` matches the value(s) provided **pageNumber** int32 **Possible values:** `>= 1` and `<= 2147483` The page number being requested (minimum: 1, maximum: 2147483) **pageSize** int32 **Possible values:** `>= 1` and `<= 1000` The page size being requested (minimum: 1, maximum: 1000) ### Header Parameters **Customer-Id** int64required The customer identifier ## Responses [​](https://developers.bigchange.com/docs/rest/api-reference/get-a-list-of-job-types\#responses "Direct link to Responses") - 200 - 400 - 403 - 500 Success - application/json - Schema - Example (auto) **Schema** **items** object\[\] The items returned for the requested page Array \[\ \ **id** int64\ \ The unique identifier of the job type\ \ **Example:** `5514123`\ \ **name** string\ \ The name of the job type\ \ **Example:** `Combi boiler installation`\ \ **description** string\ \ The default textual description for jobs of this type\ \ **Example:** `New boiler install - please remove and retain the old boiler`\ \ **plannedDuration** int32\ \ The default planned duration for jobs of this type, specified in minutes\ \ **Example:** `90`\ \ **categoryId** int32nullable\ \ The unique identifier of default category for jobs of this type\ \ **Example:** `5514123`\ \ **isArchived** boolean\ \ A flag determining if a type is archived - new jobs cannot be created against archived job types\ \ **Example:** `false`\ \ **isOrderNumberRequired** boolean\ \ A flag determining if an order number is required for jobs of this type\ \ **Example:** `true`\ \ **positiveResults** string\[\]nullable\ \ The result options for when a job is completed successfully\ \ **negativeResults** string\[\]nullable\ \ The result options for when a job is completed with issues. If null then jobs of this type will not be allowed to have the status of completedWithIssues\ \ \] **pageNumber** int32 The page number of the response where 1 is the first page **Example:** `2` **pageSize** int32 The number of items requested for the current page **Example:** `100` **pageItemCount** int32 The number of items returned in the current page **Example:** `55` ```codeBlockLines_e6Vv { "items": [\ {\ "id": 5514123,\ "name": "Combi boiler installation",\ "description": "New boiler install - please remove and retain the old boiler",\ "plannedDuration": 90,\ "categoryId": 5514123,\ "isArchived": false,\ "isOrderNumberRequired": true,\ "positiveResults": [\ "string"\ ],\ "negativeResults": [\ "string"\ ]\ }\ ], "pageNumber": 2, "pageSize": 100, "pageItemCount": 55 } ``` Bad Request - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Forbidden - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` Server Error - application/problem+json - Schema - Example (auto) **Schema** oneOf - ProblemDetails - HttpValidationProblemDetails **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] **type** stringnullable A URI reference \[RFC3986\] that identifies the problem type **Example:** `https://example.com/probs/out-of-credit` **title** stringnullable A short, human-readable summary of the problem type **Example:** `You do not have enough credit` **status** int32nullable The HTTP status code(\[RFC7231\], Section 6) generated by the origin server for this occurrence of the problem **Example:** `403` **detail** stringnullable A human-readable explanation specific to this occurrence of the problem **Example:** `Your current balance is 30, but that costs 50` **instance** stringnullable A URI reference that identifies the specific occurrence of the problem **Example:**`/account/12345/msgs/abc` **errors** object **property name\*** string\[\] Array \[\ \ string\ \ \] ```codeBlockLines_e6Vv { "type": "https://example.com/probs/out-of-credit", "title": "You do not have enough credit", "status": 403, "detail": "Your current balance is 30, but that costs 50", "instance": "/account/12345/msgs/abc" } ``` #### Authorization: http ``` name: bearertype: httpdescription: Enter the access token only.scheme: bearerbearerFormat: JWT ``` - csharp - curl - dart - go - http - java - javascript - kotlin - c - nodejs - objective-c - ocaml - php - powershell - python - r - ruby - rust - shell - swift - HTTPCLIENT - RESTSHARP ```openapi-explorer__code-block-lines openapi-explorer__code-block-lines-numbering var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://api.bigchange.com/v1/jobTypes"); request.Headers.Add("Accept", "application/json"); request.Headers.Add("Authorization", "Bearer "); var response = await client.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync()); ``` Request Collapse all Base URL Edit https://api.bigchange.com Auth Bearer Token Parameters Customer-Id — headerrequired Show optional parameters sortBy — query \-\-\-name direction — query \-\-\-ascendingdescending id — query Add item pageNumber — query pageSize — query Send API Request ResponseClear Click the `Send API Request` button above and see the response here! ## BigChange DX API [Skip to main content](https://developers.bigchange.com/docs/rest/api-reference/bigchange-dx#__docusaurus_skipToContent_fallback) Version: 1.0 # BigChange DX Developer Experience API ## Authentication [​](https://developers.bigchange.com/docs/rest/api-reference/bigchange-dx\#authentication "Direct link to Authentication") - HTTP: Bearer Auth Enter the access token only. | Security Scheme Type: | http | | HTTP Authorization Scheme: | bearer | | Bearer format: | JWT |