Current RMS
The Current RMS API allows you read/write access to your system.
Alpha Documentation
See https://documenter.getpostman.com/view/4811107/SzS5wSad?version=latest for early access to updated API documentation. This provides code snippets and over time we hope to add further examples of common use cases.
Beta Release
The Current RMS API is currently being made available as a supported beta release. You are encouraged to use the API as a developer tool however we only provide very limited support for API queries. While the the API remains in beta status it may change without notice as a result of product updates. The temporary beta status of the API will remain in place while it matures. In a future release, the beta status will be removed, at which point changes to existing APIs will be limited and documented. The Current RMS API is not available for trial accounts.
API Endpoint
The Current RMS API endpoint is at: -
https://api.current-rms.com/api/v1
Authentication
You can authenticate to the Current RMS using either OAuth2 or API keys. API keys are deemed less secure so you should consider OAuth2 whenever possible.
OAuth2
To use OAuth2 authentication you will first need to create a Custom Application to generate a Client ID and Secret. You can manage your Custom OAuth2 Applications from within the API Integration setup (System Setup > Integrations > API).
We use the “Authorization Code” grant flow in OAuth2, this follows the process: -
-
Request authorization (requires user interaction)
-
Receive authorization
-
Use authorization to obtain refresh and access tokens
-
Use the access token for all API requests until it expires
-
Use the refresh token to obtain new refresh and access tokens
-
Repeat steps #4 and #5
OAuth2 URLs
https://[subdomain].current-rms.com/oauth2/authorize
https://[subdomain].current-rms.com/oauth2/token
At present access tokens survive for 2 hours after being issued, after which time you will need to request a new one using your refresh token before making further API requests.
Deleting the Custom Application entry in Current-RMS will immediately revoke any issued refresh & access tokens and block all further access.
When sending requests to the Current-RMS API you will need to include your access token in the Authorization request header and you should always include your subdomain; this is the first part of the URL you use to access Current RMS. For example if your Current RMS URL is abcproductions.current-rms.com your subdomain would be abcproductions. The subdomain can be provided as part of the request parameters subdomain=YOUR_SUBDOMAIN, or within the request headers using the X-SUBDOMAIN attribute.
It is highly recommended that you use a well supported OAuth2 client library, there are many for Java, Ruby, C#, PHP, Javascript etc.
See https://oauth.net/2/ for further information regarding OAuth2 and the Authorization Code grant type.
API Keys
You authenticate to the Current RMS API by providing one of your API keys in the request parameters apikey=YOUR_API_KEY, or within the request headers using the X-AUTH-TOKEN attribute. You can manage your API keys from within the API Integration setup (System Setup > Integrations > API). You can have multiple API keys active at one time, each key allows full read and write access to your system - revoke API keys that are no longer in use to ensure unauthorised access is not permitted. It is good security practice to recycle API keys periodically - use the ‘Refresh’ button next to each key to do this. All API requests must be made over HTTPS, any HTTP request will be automatically redirected.
You will also need to provide your Current RMS subdomain; this is the first part of the URL you use to access Current RMS. For example if your Current RMS URL is abcproductions.current-rms.com your subdomain would be abcproductions. The subdomain can be provided as part of the request parameters subdomain=YOUR_SUBDOMAIN, or within the request headers using the X-SUBDOMAIN attribute.
You can test your credentials using the command line utility ‘curl’, for example: -
curl --header "X-SUBDOMAIN:yoursubdomain" --header "X-AUTH-TOKEN:yourapikey" "https://api.current-rms.com/api/v1/members/1"
cURL is installed by default on Mac OS and Linux, if you are using Windows you will need to install it from https://curl.haxx.se/download.html - select Win32 Generic or Win64 Generic according to your Windows version. You will also need to download the certificate bundle ‘cacert.pem’ from https://curl.haxx.se/docs/caextract.html, this file should be stored in the same folder as the curl.exe file.
Note: When using cURL on the command line with search or sort parameters, you will need to encode the square brackets ([ and ]) to %5B and %5D respectively.
Rate Limits
Requests to the API are rate limited, typically you will be limited to a maximum of 60 requests over any 60 second period. If you send through too many requests you will receive a 429 response code. The headers of this response will give information regarding the rate limit, including X-RateLimit-Reset that contains a time stamp of when the limit expires and you can retry your request.
It is not considered good practice to continuously send requests in a loop as this will make your solution perform poorly and run the risk of being rate limited.
Errors
Our API methods can raise errors for many reasons, such as invalid parameters, authentication errors, or incompatible actions. When an error occurs a 4xx response code will be given and you should check for the presence of an errors object in the response. The errors object will give you further information on the exact nature of the error.
Return status codes
Current RMS API uses the standard HTML status codes as follows: -
200 OK
Standard response for successful HTTP requests. The actual response will depend on the request method used. In a GET request, the response will contain an entity corresponding to the requested resource. In a POST request, the response will contain an entity describing or containing the result of the action.
204 No Content
The server successfully processed the request, but is not returning any content.
400 Bad Request
Your request was badly formed - this is usually an error in your JSON formatting
401 Unauthorized
Specifically used when authentication is required and has failed or has not been provided.
404 Not Found
You requested a record that does not exist or used a URL that is not recognised.
422 Unprocessable Entity
The request was well-formed but was unable to be followed due to semantic errors.
Date/Time values
Times
All date/time values must be provided as UTC in the YYYY-MM-DDTHH:MM:SS.HHHZ format: -
2015-06-28T23:00:00.000Z
Dates
Date values should be provided in the YYYY-MM-DD format: -
2015-06-28
Timezones for documents
When producing document layouts using the API, dates will be shown in UTC unless an X-TIME-ZONE header is supplied.
The string values for this header must match the timezone names as seen when editing a User Account.
"X-TIME-ZONE": "Europe/London"
Decimal Values
When providing numeric values with decimal places, the full stop character . must be used as the decimal separator and you should not include a thousands separator. For example: -
1234567.89
Pagination
Requests that return a lot of data, such as GET /members or GET /products are paginated. To get to the next page use the ?page parameter. To change the number of items per page, use the ?per_page parameter. Pages can have up to 100 items. When using pagination you must ensure that the records will be returned in a deterministic order or there is the danger of records being lost. To prevent this you need to select an appropriate sort order. If there is not an obvious natural order for your query you can append a sort by id to the end of the query. Example:
Item Counts
If you’re curious about the count of members or products you have in the system, you can look at the meta object for GET /members or GET /products. Within the meta object there are a number of attributes about the data collection you have requested, total_row_count contains the total number of respective items that are in the API.
Default scope
The index end points for Members, Products, Opportunities, Invoices, Projects and Quarantines will default to returning only active records. Records that are inactive/completed/posted/cancelled will not be returned by default. If you wish to return a complete listing of all records you should include the filtermode parameter with a value of all, e.g. filtermode=all. Please refer to the filtermode parameters in each end point for possible values.
Searching with the query engine
The primary method of searching via the Current API is by using what is known as predicates.
Predicates are used within Current API search queries to determine what information to match. For instance, the cont predicate will check to see if an attribute contains a value using a wildcard query: -
/api/v1/members?q[name_cont]=Ryan
You can also combine attributes for OR queries: -
/api/v1/members?q[name_or_description_cont]=Ryan
And also for AND queries: -
/api/v1/members?q[name_and_description_cont]=Ryan
Please note: any attempt to use an attribute or predicate in a search query that does not exist or is invalid will silently fail.
Groupings
You can use groupings to build complex criteria, this is helpful where you need to query the same and/or multiple fields using AND / OR logic.
The syntax structure is as follows: -
grouping
|_ modifier
|_ conditions
|_ attributes
|_ attribute name
|_ predicate
|_ values
|_ search value
For example, this query will look for member records where the name contains either ‘Bill’ or ‘Fred’: -
/api/v1/members?q[g][0][m]=or&q[g][0][c][0][a][0][name]=name&q[g][0][c][0][p]=cont&q[g][0][c][0][v][0][value]=Bill&q[g][0][c][1][a][0][name]=name&q[g][0][c][1][p]=cont&q[g][0][c][1][v][0][value]=Fred
This translates to: -
g[0]
|_ [m]=or
|_ c[0]
|_ a[0]
|_ [name]=name
|_ [p]=cont
|_ v[0]
|_ value=Bill
|_ c[1]
|_ a[0]
|_ [name]=name
|_ [p]=cont
|_ v[0]
|_ value=Fred
You can add further groupings with different modifiers to build complex search criteria.
A simpler version of this query can be constructed as follows: -
/api/v1/members?q[g][0][name_cont]=Bill&q[g][1][name_cont]=Fred&q[m]=or
However, this does not allow for multiple groups with different modifiers.
eq (equals)
The eq predicate returns all records where a field is exactly equal to a given value: -
/api/v1/members?q[name_eq]=Ryan
Opposite: not_eq
matches
The matches predicate returns all records where a field is like a given value: -
/api/v1/members?q[name_matches]=Ryan
Opposite: does_not_match
Note: If you want to do wildcard matching, you may be looking for the cont/not_cont predicates instead.
lt (less than)
The lt predicate returns all records where a field is less than a given value: -
/api/v1/members?q[rating_lt]=3
Opposite: gt (greater than)
lteq (less than or equal to)
The lteq predicate returns all records where a field is less than or equal to a given value:
/api/v1/members?q[rating_lteq]=3
Opposite: gteq (greater than or equal to)
in
The in predicate returns all records where a field is within a specified list: -
/api/v1/members?q[rating_in][]=2&q[rating_in][]=3&q[rating_in][]=4
Opposite: not_in
cont
The cont predicate returns all records where a field contains a given value: -
/api/v1/members?q[name_cont]=Ryan
Opposite: not_cont
cont_any (contains any)
The cont_any predicate returns all records where a field contains any of the given values: -
/api/v1/members?q[name_cont_any][]=Ryan&q[name_cont_any][]=Bill&q[name_cont_any][]=Fred
Opposite: not_cont_any
cont_all (contains all)
The cont_all predicate returns all records where a field contains all of the given values: -
/api/v1/members?q[name_cont_all][]=Ryan&q[name_cont_all][]=Bill&q[name_cont_all][]=Fred
Opposite: not_cont_all
start (starts with)
The start predicate returns all records where a field begins with a given value: -
/api/v1/members?q[name_start]=Ryan
Opposite: not_start
end (ends with)
The end predicate returns all records where a field ends with a given value: -
/api/v1/members?q[name_end]=Ryan
Opposite: not_end
true
The true predicate returns all records where a field is true. The ‘1’ indicates that to Ransack that you indeed want to check the truthiness of this field. The other truthy values are ‘true’, ‘TRUE’, ‘t’ or ‘T’.
/api/v1/members?q[active_true]=1
Opposite: not_true
false
The false predicate returns all records where a field is false: -
/api/v1/members?q[active_false]=1
Opposite: not_false
Note: the false predicate may be considered the opposite of the true predicate if the field does not contain null values. Otherwise, use not_false.
present
The present predicate returns all records where a field is present (not null and not a blank string): -
/api/v1/members?q[name_present]=1
Opposite: blank
null
The null predicate returns all records where a field is null: -
/api/v1/members?q[name_null]=1
Opposite: not_null
Sorting
The query engine can also sort the results of your search, for example to sort by the ‘name’ attribute in ascending order: -
/api/v1/members?q[s][]=name+asc
Or, in descending order: -
/api/v1/members?q[s][]=name+desc
You can also sort on multiple attributes, for example to sort by membership type, then by name: -
/api/v1/members?q[s][]=membership_type+asc&q[s][]=name+asc
Custom Field Searching
It is also possible to make queries on your custom fields. To do so, use the custom field ID in place of a property name. These IDs can be retrieved from the custom fields endpoint, or read from the URL on a custom field’s edit form.
Examples
Filter your products on the presence of a text custom field with an id of 14: -
/api/v1/products?q[14_present]=1
Filter your activities on a ‘multi list of values’ custom field where the custom field ID is 159 and the list value ID is 1000348
/api/v1/activities?q[159_cont]=1000348
Filter your products for those where a boolean custom field is true: -
/api/v1/products?q[109_eq]=true
Filter your products for those where a boolean custom field is not true (false or blank): -
/api/v1/products?q[109_blank]=1&q[109_eq]=false&q[combinator]=or
Accessories ¶
An Accessory represents a product that should be included with a parent when it is rented or sold
Accessory ¶
/products/{product_id}/accessories/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
product_id (number, required) | 1 | The ID of the desired product |
id (number, required) | 1 | The ID of the desired accessory |
Response 200
Headers
Content-Type: application/jsonBody
{
"accessory": {
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2,
"id": 1,
"relatable_id": 25,
"relatable_type": "Item",
"related_name": "REDMote",
"related_icon_url": "Hello, world!",
"related_icon_thumb_url": "Hello, world!",
"type": "Accessory",
"parent_transaction_type_name": "rent",
"item_transaction_type_name": "rented",
"inclusion_type_name": "mandatory",
"mode_name": "accessory",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessory": {
"type": "object",
"properties": {
"related_id": {
"type": "number",
"description": "The internal identifier of the child Product record this accessory relates to"
},
"related_type": {
"type": "string",
"description": "The type of child record this accessory relates to (always Item)"
},
"parent_transaction_type": {
"type": "number",
"description": "The transaction type of the parent that this accessory should be included with (0 = Both, 1 = Rental, 2 = Sale)"
},
"item_transaction_type": {
"type": "number",
"description": "The child accessory transaction type (1 = Rental, 2 = Sale)"
},
"inclusion_type": {
"type": "number",
"description": "The child accessory inclusion type (0 = Default, 1 = Mandatory, 2 = Optional)"
},
"mode": {
"type": "number",
"description": "The child accessory mode (0 = Accessory, 1 = Safety, 2 = Component)"
},
"quantity": {
"type": "string",
"description": "The quantity of the child accessory to be taken for each parent"
},
"zero_priced": {
"type": "boolean",
"description": "Is this child accessory included at zero price?"
},
"sort_order": {
"type": "number",
"description": "The order this accessory is added to the parent"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Accessory record"
},
"relatable_id": {
"type": "number",
"description": "The internal identifier of the parent Product record this accessory relates to"
},
"relatable_type": {
"type": "string",
"description": "The type of parent record this accessory relates to (always Item)"
},
"related_name": {
"type": "string",
"description": "(Readonly) The product name of the child record"
},
"related_icon_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record"
},
"related_icon_thumb_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record (thumbnail)"
},
"type": {
"type": "string",
"description": "The type of related record (always Accessory)"
},
"parent_transaction_type_name": {
"type": "string",
"description": "(Readonly) The parent transaction type name"
},
"item_transaction_type_name": {
"type": "string",
"description": "(Readonly) The child accessory transaction type name"
},
"inclusion_type_name": {
"type": "string",
"description": "(Readonly) The child accessory inclusion type name"
},
"mode_name": {
"type": "string",
"description": "(Readonly) The child accessory mode name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was last updated"
}
}
}
}
}/products/{product_id}/accessories/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
product_id (number, required) | 1 | The ID of the desired product |
id (number, required) | 1 | The ID of the desired accessory |
Request
Headers
Content-Type: application/jsonBody
{
"accessory": {
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessory": {
"type": "object",
"properties": {
"related_id": {
"type": "number",
"description": "The internal identifier of the child Product record this accessory relates to"
},
"related_type": {
"type": "string",
"description": "The type of child record this accessory relates to (always Item)"
},
"parent_transaction_type": {
"type": "number",
"description": "The transaction type of the parent that this accessory should be included with (0 = Both, 1 = Rental, 2 = Sale)"
},
"item_transaction_type": {
"type": "number",
"description": "The child accessory transaction type (1 = Rental, 2 = Sale)"
},
"inclusion_type": {
"type": "number",
"description": "The child accessory inclusion type (0 = Default, 1 = Mandatory, 2 = Optional)"
},
"mode": {
"type": "number",
"description": "The child accessory mode (0 = Accessory, 1 = Safety, 2 = Component)"
},
"quantity": {
"type": "string",
"description": "The quantity of the child accessory to be taken for each parent"
},
"zero_priced": {
"type": "boolean",
"description": "Is this child accessory included at zero price?"
},
"sort_order": {
"type": "number",
"description": "The order this accessory is added to the parent"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"accessory": {
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2,
"id": 1,
"relatable_id": 25,
"relatable_type": "Item",
"related_name": "REDMote",
"related_icon_url": "Hello, world!",
"related_icon_thumb_url": "Hello, world!",
"type": "Accessory",
"parent_transaction_type_name": "rent",
"item_transaction_type_name": "rented",
"inclusion_type_name": "mandatory",
"mode_name": "accessory",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessory": {
"type": "object",
"properties": {
"related_id": {
"type": "number",
"description": "The internal identifier of the child Product record this accessory relates to"
},
"related_type": {
"type": "string",
"description": "The type of child record this accessory relates to (always Item)"
},
"parent_transaction_type": {
"type": "number",
"description": "The transaction type of the parent that this accessory should be included with (0 = Both, 1 = Rental, 2 = Sale)"
},
"item_transaction_type": {
"type": "number",
"description": "The child accessory transaction type (1 = Rental, 2 = Sale)"
},
"inclusion_type": {
"type": "number",
"description": "The child accessory inclusion type (0 = Default, 1 = Mandatory, 2 = Optional)"
},
"mode": {
"type": "number",
"description": "The child accessory mode (0 = Accessory, 1 = Safety, 2 = Component)"
},
"quantity": {
"type": "string",
"description": "The quantity of the child accessory to be taken for each parent"
},
"zero_priced": {
"type": "boolean",
"description": "Is this child accessory included at zero price?"
},
"sort_order": {
"type": "number",
"description": "The order this accessory is added to the parent"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Accessory record"
},
"relatable_id": {
"type": "number",
"description": "The internal identifier of the parent Product record this accessory relates to"
},
"relatable_type": {
"type": "string",
"description": "The type of parent record this accessory relates to (always Item)"
},
"related_name": {
"type": "string",
"description": "(Readonly) The product name of the child record"
},
"related_icon_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record"
},
"related_icon_thumb_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record (thumbnail)"
},
"type": {
"type": "string",
"description": "The type of related record (always Accessory)"
},
"parent_transaction_type_name": {
"type": "string",
"description": "(Readonly) The parent transaction type name"
},
"item_transaction_type_name": {
"type": "string",
"description": "(Readonly) The child accessory transaction type name"
},
"inclusion_type_name": {
"type": "string",
"description": "(Readonly) The child accessory inclusion type name"
},
"mode_name": {
"type": "string",
"description": "(Readonly) The child accessory mode name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was last updated"
}
}
}
}
}Accessories ¶
/products/{product_id}/accessoriesExample URI
Parameters
| Name | Example | Description |
|---|---|---|
product_id (number, required) | 1 | The ID of the desired product |
Response 200
Headers
Content-Type: application/jsonBody
{
"accessories": [
{
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2,
"id": 1,
"relatable_id": 25,
"relatable_type": "Item",
"related_name": "REDMote",
"related_icon_url": "Hello, world!",
"related_icon_thumb_url": "Hello, world!",
"type": "Accessory",
"parent_transaction_type_name": "rent",
"item_transaction_type_name": "rented",
"inclusion_type_name": "mandatory",
"mode_name": "accessory",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessories": {
"type": "array"
}
}
}/products/{product_id}/accessoriesExample URI
Parameters
| Name | Example | Description |
|---|---|---|
product_id (number, required) | 1 | The ID of the desired product |
Request
Headers
Content-Type: application/jsonBody
{
"accessory": {
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessory": {
"type": "object",
"properties": {
"related_id": {
"type": "number",
"description": "The internal identifier of the child Product record this accessory relates to"
},
"related_type": {
"type": "string",
"description": "The type of child record this accessory relates to (always Item)"
},
"parent_transaction_type": {
"type": "number",
"description": "The transaction type of the parent that this accessory should be included with (0 = Both, 1 = Rental, 2 = Sale)"
},
"item_transaction_type": {
"type": "number",
"description": "The child accessory transaction type (1 = Rental, 2 = Sale)"
},
"inclusion_type": {
"type": "number",
"description": "The child accessory inclusion type (0 = Default, 1 = Mandatory, 2 = Optional)"
},
"mode": {
"type": "number",
"description": "The child accessory mode (0 = Accessory, 1 = Safety, 2 = Component)"
},
"quantity": {
"type": "string",
"description": "The quantity of the child accessory to be taken for each parent"
},
"zero_priced": {
"type": "boolean",
"description": "Is this child accessory included at zero price?"
},
"sort_order": {
"type": "number",
"description": "The order this accessory is added to the parent"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"accessory": {
"related_id": 317,
"related_type": "Item",
"parent_transaction_type": 1,
"item_transaction_type": 1,
"inclusion_type": 1,
"mode": 0,
"quantity": "3.0",
"zero_priced": false,
"sort_order": 2,
"id": 1,
"relatable_id": 25,
"relatable_type": "Item",
"related_name": "REDMote",
"related_icon_url": "Hello, world!",
"related_icon_thumb_url": "Hello, world!",
"type": "Accessory",
"parent_transaction_type_name": "rent",
"item_transaction_type_name": "rented",
"inclusion_type_name": "mandatory",
"mode_name": "accessory",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"accessory": {
"type": "object",
"properties": {
"related_id": {
"type": "number",
"description": "The internal identifier of the child Product record this accessory relates to"
},
"related_type": {
"type": "string",
"description": "The type of child record this accessory relates to (always Item)"
},
"parent_transaction_type": {
"type": "number",
"description": "The transaction type of the parent that this accessory should be included with (0 = Both, 1 = Rental, 2 = Sale)"
},
"item_transaction_type": {
"type": "number",
"description": "The child accessory transaction type (1 = Rental, 2 = Sale)"
},
"inclusion_type": {
"type": "number",
"description": "The child accessory inclusion type (0 = Default, 1 = Mandatory, 2 = Optional)"
},
"mode": {
"type": "number",
"description": "The child accessory mode (0 = Accessory, 1 = Safety, 2 = Component)"
},
"quantity": {
"type": "string",
"description": "The quantity of the child accessory to be taken for each parent"
},
"zero_priced": {
"type": "boolean",
"description": "Is this child accessory included at zero price?"
},
"sort_order": {
"type": "number",
"description": "The order this accessory is added to the parent"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Accessory record"
},
"relatable_id": {
"type": "number",
"description": "The internal identifier of the parent Product record this accessory relates to"
},
"relatable_type": {
"type": "string",
"description": "The type of parent record this accessory relates to (always Item)"
},
"related_name": {
"type": "string",
"description": "(Readonly) The product name of the child record"
},
"related_icon_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record"
},
"related_icon_thumb_url": {
"type": "string",
"description": "(Readonly) The product icon of the child record (thumbnail)"
},
"type": {
"type": "string",
"description": "The type of related record (always Accessory)"
},
"parent_transaction_type_name": {
"type": "string",
"description": "(Readonly) The parent transaction type name"
},
"item_transaction_type_name": {
"type": "string",
"description": "(Readonly) The child accessory transaction type name"
},
"inclusion_type_name": {
"type": "string",
"description": "(Readonly) The child accessory inclusion type name"
},
"mode_name": {
"type": "string",
"description": "(Readonly) The child accessory mode name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Accessory record was last updated"
}
}
}
}
}Actions ¶
An action record describes an action within the system carried out by a user, or as part of a system process. Action records are read-only.
Action ¶
/actions/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired action |
Response 200
Headers
Content-Type: application/jsonBody
{
"action": {
"subject_id": 33,
"subject_type": "Opportunity",
"source_id": 128,
"source_type": "OpportunityDocument",
"member_id": 1,
"name": "Enable dynamic e-tailers",
"description": "Delivery Note",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1,
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"action": {
"type": "object",
"properties": {
"subject_id": {
"type": "number",
"description": "The internal identifier of the Action's subject record (what the Action is related to)"
},
"subject_type": {
"type": "string",
"description": "The object name of the Action's subject record"
},
"source_id": {
"type": "number",
"description": "The internal identifier of the Action's source record (where the Action has come from)"
},
"source_type": {
"type": "string",
"description": "The object name of the Action's source record"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the user who triggered this action"
},
"name": {
"type": "string",
"description": "The name of the Action's subject"
},
"description": {
"type": "string",
"description": "A description of the Action"
},
"created_at": {
"type": "string",
"description": "The original date & time of the Action"
},
"updated_at": {
"type": "string",
"description": "The latest date & time of the Action"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the action record"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {},
"description": "A membership object"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) An object containing the member record data"
}
}
}
}
}Actions ¶
/actions{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_description_cont] (string, optional, `search_text_here`) (string, required) | Search on name or description for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"actions": [
{
"subject_id": 33,
"subject_type": "Opportunity",
"source_id": 128,
"source_type": "OpportunityDocument",
"member_id": 1,
"name": "Enable dynamic e-tailers",
"description": "Delivery Note",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1,
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"actions": {
"type": "array"
}
}
}Activities ¶
An activity is a diary based task associated with and assigned to many of the objects within Current RMS
To remove existing participants from an activity object, include the attribute _destroy with a value of 1 along with the participant record id when performing an update operation, for example: -
{
"activity": {
"id": 1,
"participants": [
{
"id": 1,
"_destroy": 1
}
]
}
}
Activity ¶
/activities/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired activity |
include[] (string, optional) | participants | Override association attributes you want included in the response, use multiple |
Response 200
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
],
"id": 1,
"activity_type_name": "Fax",
"activity_status_name": "Scheduled",
"time_status_name": "Free",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"regarding": {},
"owner": {}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activity": {
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The subject of the activity"
},
"description": {
"type": "string",
"description": "A longer description of the activity"
},
"location": {
"type": "string",
"description": "The location of the activity"
},
"regarding_id": {
"type": "number",
"description": "The internal identifier of the regarding record for the activity"
},
"regarding_type": {
"type": "string",
"description": "The type of regarding record"
},
"owned_by": {
"type": "number",
"description": "The internal record identifier of the owner of the activity"
},
"starts_at": {
"type": "string",
"description": "The start date & time of the activity"
},
"ends_at": {
"type": "string",
"description": "The end date & time of the activity"
},
"priority": {
"type": "number",
"description": "The priority of the activity (1 to 5)"
},
"type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the type of the activity"
},
"status_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the status of the activity"
},
"completed": {
"type": "boolean",
"description": "Whether the activity is completed"
},
"time_status": {
"type": "number",
"description": "0 = Free, 1 = Busy"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the activity record"
},
"activity_type_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"activity_status_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"time_status_name": {
"type": "string",
"description": "(Readonly) The time status name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the activity was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the activity was last updated"
},
"regarding": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the regarding record data"
},
"owner": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the owner record data"
}
},
"required": [
"subject"
]
}
}
}/activities/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired activity |
include[] (string, optional) | participants | Override association attributes you want included in the response, use multiple |
Request
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activity": {
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The subject of the activity"
},
"description": {
"type": "string",
"description": "A longer description of the activity"
},
"location": {
"type": "string",
"description": "The location of the activity"
},
"regarding_id": {
"type": "number",
"description": "The internal identifier of the regarding record for the activity"
},
"regarding_type": {
"type": "string",
"description": "The type of regarding record"
},
"owned_by": {
"type": "number",
"description": "The internal record identifier of the owner of the activity"
},
"starts_at": {
"type": "string",
"description": "The start date & time of the activity"
},
"ends_at": {
"type": "string",
"description": "The end date & time of the activity"
},
"priority": {
"type": "number",
"description": "The priority of the activity (1 to 5)"
},
"type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the type of the activity"
},
"status_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the status of the activity"
},
"completed": {
"type": "boolean",
"description": "Whether the activity is completed"
},
"time_status": {
"type": "number",
"description": "0 = Free, 1 = Busy"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
}
},
"required": [
"subject"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
],
"id": 1,
"activity_type_name": "Fax",
"activity_status_name": "Scheduled",
"time_status_name": "Free",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"regarding": {},
"owner": {}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activity": {
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The subject of the activity"
},
"description": {
"type": "string",
"description": "A longer description of the activity"
},
"location": {
"type": "string",
"description": "The location of the activity"
},
"regarding_id": {
"type": "number",
"description": "The internal identifier of the regarding record for the activity"
},
"regarding_type": {
"type": "string",
"description": "The type of regarding record"
},
"owned_by": {
"type": "number",
"description": "The internal record identifier of the owner of the activity"
},
"starts_at": {
"type": "string",
"description": "The start date & time of the activity"
},
"ends_at": {
"type": "string",
"description": "The end date & time of the activity"
},
"priority": {
"type": "number",
"description": "The priority of the activity (1 to 5)"
},
"type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the type of the activity"
},
"status_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the status of the activity"
},
"completed": {
"type": "boolean",
"description": "Whether the activity is completed"
},
"time_status": {
"type": "number",
"description": "0 = Free, 1 = Busy"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the activity record"
},
"activity_type_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"activity_status_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"time_status_name": {
"type": "string",
"description": "(Readonly) The time status name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the activity was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the activity was last updated"
},
"regarding": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the regarding record data"
},
"owner": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the owner record data"
}
},
"required": [
"subject"
]
}
}
}/activities/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired activity |
include[] (string, optional) | participants | Override association attributes you want included in the response, use multiple |
Response 204
Activities ¶
/activities{?page,per_page,filtermode,view_id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
filtermode (string, optional) | all | A built in filtermode name (e.g. pending, completed, all) |
view_id (number, optional) | 1 | The record id of a custom view |
q[subject_or_description_or_location_or_tags_name_cont] (string, optional) | search_text_here | Search on subject, description, location or tags for matching records |
include[] (string, optional) | participants | Override association attributes you want included in the response, use multiple |
Response 200
Headers
Content-Type: application/jsonBody
{
"activities": [
{
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
],
"id": 1,
"activity_type_name": "Fax",
"activity_status_name": "Scheduled",
"time_status_name": "Free",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"regarding": {},
"owner": {}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activities": {
"type": "array"
}
}
}/activitiesExample URI
Request
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activity": {
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The subject of the activity"
},
"description": {
"type": "string",
"description": "A longer description of the activity"
},
"location": {
"type": "string",
"description": "The location of the activity"
},
"regarding_id": {
"type": "number",
"description": "The internal identifier of the regarding record for the activity"
},
"regarding_type": {
"type": "string",
"description": "The type of regarding record"
},
"owned_by": {
"type": "number",
"description": "The internal record identifier of the owner of the activity"
},
"starts_at": {
"type": "string",
"description": "The start date & time of the activity"
},
"ends_at": {
"type": "string",
"description": "The end date & time of the activity"
},
"priority": {
"type": "number",
"description": "The priority of the activity (1 to 5)"
},
"type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the type of the activity"
},
"status_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the status of the activity"
},
"completed": {
"type": "boolean",
"description": "Whether the activity is completed"
},
"time_status": {
"type": "number",
"description": "0 = Free, 1 = Busy"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
}
},
"required": [
"subject"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "Enable dynamic e-tailers",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"location": "Hereford",
"regarding_id": 39,
"regarding_type": "Member",
"owned_by": 1,
"starts_at": "2015-06-29T10:00:00.000Z",
"ends_at": "2015-06-29T10:30:00.000Z",
"priority": 1,
"type_id": 1003,
"status_id": 2001,
"completed": false,
"time_status": 0,
"custom_fields": {},
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Activity"
}
],
"id": 1,
"activity_type_name": "Fax",
"activity_status_name": "Scheduled",
"time_status_name": "Free",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"regarding": {},
"owner": {}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"activity": {
"type": "object",
"properties": {
"subject": {
"type": "string",
"description": "The subject of the activity"
},
"description": {
"type": "string",
"description": "A longer description of the activity"
},
"location": {
"type": "string",
"description": "The location of the activity"
},
"regarding_id": {
"type": "number",
"description": "The internal identifier of the regarding record for the activity"
},
"regarding_type": {
"type": "string",
"description": "The type of regarding record"
},
"owned_by": {
"type": "number",
"description": "The internal record identifier of the owner of the activity"
},
"starts_at": {
"type": "string",
"description": "The start date & time of the activity"
},
"ends_at": {
"type": "string",
"description": "The end date & time of the activity"
},
"priority": {
"type": "number",
"description": "The priority of the activity (1 to 5)"
},
"type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the type of the activity"
},
"status_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the status of the activity"
},
"completed": {
"type": "boolean",
"description": "Whether the activity is completed"
},
"time_status": {
"type": "number",
"description": "0 = Free, 1 = Busy"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the activity record"
},
"activity_type_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"activity_status_name": {
"type": "string",
"description": "(Readonly) The activity type name"
},
"time_status_name": {
"type": "string",
"description": "(Readonly) The time status name"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the activity was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the activity was last updated"
},
"regarding": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the regarding record data"
},
"owner": {
"type": "object",
"properties": {},
"description": "(Readonly) An object containing the owner record data"
}
},
"required": [
"subject"
]
}
}
}Activity examples ¶
/activities/api/v1/activities?q[time_status_eq]=1&q[starts_at_lt]=2021-08-25T00:00:00.000Z&q[ends_at_gteq]=2021-08-24T00:00:00.000Z&q[participants_member_id_eq][]=123
Example URI
/activitiesExample URI
Request
Headers
Content-Type: application/jsonBody
{
"activity": {
"subject": "New API Activity",
"description": "A new activity created via the API",
"starts_at": "2021-06-29T10:00:00.000Z",
"ends_at": "2021-06-29T10:30:00.000Z",
"regarding_type": "Opportunity",
"regarding_id": 124,
"owned_by": 1,
"participants": [
{
"member_id": 24
}
]
}
}Attachments ¶
An attachment is a record of an uploaded file
Attachment ¶
/attachments/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired attachment |
Response 200
Headers
Content-Type: application/jsonBody
{
"attachment": {
"attachable_id": 39,
"name": "Site Plan",
"description": "Hello, world!",
"attachment_file_name": "Screen_Shot_2015-07-28_at_16.23.39.png",
"attachment_content_type": "image/png",
"attachment_file_size": 46424,
"attachment_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"attachment_thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachment": {
"type": "object",
"properties": {
"attachable_id": {
"type": "number",
"description": "The internal identifier of the attachable record for the activity"
},
"name": {
"type": "string",
"description": "The name of the attachment"
},
"description": {
"type": "string",
"description": "A long description of the attachment"
},
"attachment_file_name": {
"type": "string",
"description": "The filename of the attachment"
},
"attachment_content_type": {
"type": "string",
"description": "The attachment content type"
},
"attachment_file_size": {
"type": "number",
"description": "The attachment file size in bytes"
},
"attachment_url": {
"type": "string",
"description": "(Readonly) The URL of the attachment"
},
"attachment_thumb_url": {
"type": "string",
"description": "(Readonly) The URL of the thumbnail of the attachment (only applicable to image based attachments)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Attachment was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Attachment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the attachment record"
}
},
"required": [
"name"
]
}
}
}/attachments/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired attachment |
Request
Headers
Content-Type: application/jsonBody
{
"attachment": {
"attachable_id": 39,
"name": "Site Plan",
"description": "Hello, world!",
"attachment_file_name": "Screen_Shot_2015-07-28_at_16.23.39.png",
"attachment_content_type": "image/png",
"attachment_file_size": 46424,
"attachment_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"attachment_thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachment": {
"type": "object",
"properties": {
"attachable_id": {
"type": "number",
"description": "The internal identifier of the attachable record for the activity"
},
"name": {
"type": "string",
"description": "The name of the attachment"
},
"description": {
"type": "string",
"description": "A long description of the attachment"
},
"attachment_file_name": {
"type": "string",
"description": "The filename of the attachment"
},
"attachment_content_type": {
"type": "string",
"description": "The attachment content type"
},
"attachment_file_size": {
"type": "number",
"description": "The attachment file size in bytes"
},
"attachment_url": {
"type": "string",
"description": "(Readonly) The URL of the attachment"
},
"attachment_thumb_url": {
"type": "string",
"description": "(Readonly) The URL of the thumbnail of the attachment (only applicable to image based attachments)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Attachment was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Attachment"
}
},
"required": [
"name"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"attachment": {
"attachable_id": 39,
"name": "Site Plan",
"description": "Hello, world!",
"attachment_file_name": "Screen_Shot_2015-07-28_at_16.23.39.png",
"attachment_content_type": "image/png",
"attachment_file_size": 46424,
"attachment_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"attachment_thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachment": {
"type": "object",
"properties": {
"attachable_id": {
"type": "number",
"description": "The internal identifier of the attachable record for the activity"
},
"name": {
"type": "string",
"description": "The name of the attachment"
},
"description": {
"type": "string",
"description": "A long description of the attachment"
},
"attachment_file_name": {
"type": "string",
"description": "The filename of the attachment"
},
"attachment_content_type": {
"type": "string",
"description": "The attachment content type"
},
"attachment_file_size": {
"type": "number",
"description": "The attachment file size in bytes"
},
"attachment_url": {
"type": "string",
"description": "(Readonly) The URL of the attachment"
},
"attachment_thumb_url": {
"type": "string",
"description": "(Readonly) The URL of the thumbnail of the attachment (only applicable to image based attachments)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Attachment was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Attachment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the attachment record"
}
},
"required": [
"name"
]
}
}
}/attachments/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired attachment |
Response 204
Attachments ¶
/attachments{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_attachment_file_name_cont] (string, optional, `search_text_here`) (string, required) | Search on name or file name for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"attachments": [
{
"attachable_id": 39,
"name": "Site Plan",
"description": "Hello, world!",
"attachment_file_name": "Screen_Shot_2015-07-28_at_16.23.39.png",
"attachment_content_type": "image/png",
"attachment_file_size": 46424,
"attachment_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"attachment_thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachments": {
"type": "array"
}
}
}/attachmentsThe file to attach can be specified using one of the following options:
-
provide a publicly accessible URL to the file using the
attachment_link_urlattribute -
provide a Base64 encoded data URI formatted version of the file using the
attachment_base64attribute (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) and a file name using theattachment_file_nameattribute -
perform a multi-part form POST using the
attachmentattribute and content type ofapplication/x-www-form-urlencoded; charset=utf-8
Example URI
Request
Headers
Content-Type: application/jsonBody
{
"attachment": {
"attachable_id": 39,
"attachable_type": "Member",
"name": "Site Plan",
"description": "",
"attachment": {},
"attachment_link_url": ""
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachment": {
"type": "object",
"properties": {
"attachable_id": {
"type": "number",
"description": "The internal identifier of the attachable record for the activity"
},
"attachable_type": {
"type": "string",
"description": "The type of attachable record"
},
"name": {
"type": "string",
"description": "The name of the attachment"
},
"description": {
"type": "string",
"description": "A long description of the attachment"
},
"attachment": {
"type": "object",
"properties": {},
"description": "The form-data file object to upload"
},
"attachment_link_url": {
"type": "string",
"description": "A publically accessible URL to use as the attachment source"
}
},
"required": [
"name"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"attachment": {
"attachable_id": 39,
"name": "Site Plan",
"description": "Hello, world!",
"attachment_file_name": "Screen_Shot_2015-07-28_at_16.23.39.png",
"attachment_content_type": "image/png",
"attachment_file_size": 46424,
"attachment_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"attachment_thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"attachment": {
"type": "object",
"properties": {
"attachable_id": {
"type": "number",
"description": "The internal identifier of the attachable record for the activity"
},
"name": {
"type": "string",
"description": "The name of the attachment"
},
"description": {
"type": "string",
"description": "A long description of the attachment"
},
"attachment_file_name": {
"type": "string",
"description": "The filename of the attachment"
},
"attachment_content_type": {
"type": "string",
"description": "The attachment content type"
},
"attachment_file_size": {
"type": "number",
"description": "The attachment file size in bytes"
},
"attachment_url": {
"type": "string",
"description": "(Readonly) The URL of the attachment"
},
"attachment_thumb_url": {
"type": "string",
"description": "(Readonly) The URL of the thumbnail of the attachment (only applicable to image based attachments)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Attachment was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Attachment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the attachment record"
}
},
"required": [
"name"
]
}
}
}Discussion Comments ¶
A discussion contains comments received or sent related to an object within Current (e.g. Organisation, Product, Opportunity, Invoice etc.)
Comment ¶
/discussions/{discussion_id}/comments/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
discussion_id (number, required) | 1 | The ID of the desired discussion |
id (number, required) | 1 | The ID of the desired comment |
Response 200
Headers
Content-Type: application/jsonBody
{
"comment": {
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1,
"id": 1,
"first": true,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comment": {
"type": "object",
"properties": {
"discussion_id": {
"type": "number",
"description": "The internal identifier of the discussion record for the comment"
},
"remark": {
"type": "string",
"description": "The comment text"
},
"html": {
"type": "boolean",
"description": "Comment is HTML formatted?"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Comment record"
},
"first": {
"type": "boolean",
"description": "(Readonly) Is this the first comment for the discussion?"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this comment"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Comment was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Comment"
}
}
}
}
}/discussions/{discussion_id}/comments/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
discussion_id (number, required) | 1 | The ID of the desired discussion |
id (number, required) | 1 | The ID of the desired comment |
Request
Headers
Content-Type: application/jsonBody
{
"comment": {
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comment": {
"type": "object",
"properties": {
"discussion_id": {
"type": "number",
"description": "The internal identifier of the discussion record for the comment"
},
"remark": {
"type": "string",
"description": "The comment text"
},
"html": {
"type": "boolean",
"description": "Comment is HTML formatted?"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"comment": {
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1,
"id": 1,
"first": true,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comment": {
"type": "object",
"properties": {
"discussion_id": {
"type": "number",
"description": "The internal identifier of the discussion record for the comment"
},
"remark": {
"type": "string",
"description": "The comment text"
},
"html": {
"type": "boolean",
"description": "Comment is HTML formatted?"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Comment record"
},
"first": {
"type": "boolean",
"description": "(Readonly) Is this the first comment for the discussion?"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this comment"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Comment was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Comment"
}
}
}
}
}Comments ¶
/discussions/{discussion_id}/commentsExample URI
Parameters
| Name | Example | Description |
|---|---|---|
discussion_id (number, required) | 1 | The ID of the desired discussion |
Response 200
Headers
Content-Type: application/jsonBody
{
"comments": [
{
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1,
"id": 1,
"first": true,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comments": {
"type": "array"
}
}
}/discussions/{discussion_id}/commentsIt is possible to set the creator of the comment by including the created_by attribute with the ID of a Member record.
The method will create a discussion participant for the comment creator so the member must have a work email.
Example URI
Parameters
| Name | Example | Description |
|---|---|---|
discussion_id (number, required) | 1 | The ID of the desired discussion |
Request
Headers
Content-Type: application/jsonBody
{
"comment": {
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comment": {
"type": "object",
"properties": {
"discussion_id": {
"type": "number",
"description": "The internal identifier of the discussion record for the comment"
},
"remark": {
"type": "string",
"description": "The comment text"
},
"html": {
"type": "boolean",
"description": "Comment is HTML formatted?"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"comment": {
"discussion_id": 1,
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"html": false,
"created_by": 1,
"id": 1,
"first": true,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"comment": {
"type": "object",
"properties": {
"discussion_id": {
"type": "number",
"description": "The internal identifier of the discussion record for the comment"
},
"remark": {
"type": "string",
"description": "The comment text"
},
"html": {
"type": "boolean",
"description": "Comment is HTML formatted?"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Comment record"
},
"first": {
"type": "boolean",
"description": "(Readonly) Is this the first comment for the discussion?"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this comment"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Comment was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Comment"
}
}
}
}
}Cost Groups ¶
A Cost Group is a grouping container for Opportunity Costs
Cost Group ¶
/cost_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Cost Group |
Response 200
Headers
Content-Type: application/jsonBody
{
"cost_group": {
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true,
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cost Group name"
},
"description": {
"type": "string",
"description": "A longer description of the Cost Group"
},
"active": {
"type": "boolean",
"description": "Is this Cost Group active?"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Cost Group record"
}
}
}
}
}/cost_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Cost Group |
Request
Headers
Content-Type: application/jsonBody
{
"cost_group": {
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cost Group name"
},
"description": {
"type": "string",
"description": "A longer description of the Cost Group"
},
"active": {
"type": "boolean",
"description": "Is this Cost Group active?"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"cost_group": {
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true,
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cost Group name"
},
"description": {
"type": "string",
"description": "A longer description of the Cost Group"
},
"active": {
"type": "boolean",
"description": "Is this Cost Group active?"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Cost Group record"
}
}
}
}
}/cost_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Cost Group |
Response 204
Cost Groups ¶
/cost_groups{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_description_cont] (string, optional, `search_text_here`) (string, required) | Search on name or description for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"cost_groups": [
{
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true,
"id": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_groups": {
"type": "array"
}
}
}/cost_groupsExample URI
Request
Headers
Content-Type: application/jsonBody
{
"cost_group": {
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cost Group name"
},
"description": {
"type": "string",
"description": "A longer description of the Cost Group"
},
"active": {
"type": "boolean",
"description": "Is this Cost Group active?"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"cost_group": {
"name": "Cost Group Name",
"description": "Hello, world!",
"active": true,
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"cost_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The Cost Group name"
},
"description": {
"type": "string",
"description": "A longer description of the Cost Group"
},
"active": {
"type": "boolean",
"description": "Is this Cost Group active?"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Cost Group record"
}
}
}
}
}Countries ¶
A country record describes a country. Country records are read-only.
Country ¶
/countries/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired action |
Response 200
Headers
Content-Type: application/jsonBody
{
"country": {
"name": "United Kingdom",
"code": "GB",
"has_state_tax": false,
"eu_member": true,
"currency_code": "GBP",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"country": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The country name"
},
"code": {
"type": "string",
"description": "The country ISO code"
},
"has_state_tax": {
"type": "boolean",
"description": "Flag indicating if the country has state tax rules"
},
"eu_member": {
"type": "boolean",
"description": "Flag indicating if the country is an EU Member state"
},
"currency_code": {
"type": "string",
"description": "The country's currency code"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the country record"
}
}
}
}
}Countries ¶
/countries{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_code_cont] (string, optional, `search_text_here`) (string, required) | Search on name or country code for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"countries": [
{
"name": "United Kingdom",
"code": "GB",
"has_state_tax": false,
"eu_member": true,
"currency_code": "GBP",
"id": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"countries": {
"type": "array"
}
}
}Custom Field Groups ¶
A Custom Field Group is a grouping container for Custom Fields
Custom Field Group ¶
/custom_field_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field Group |
Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field_group": {
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1,
"id": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field Group"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field Group"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field Group appears on screen"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field Group record"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field Group was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field Group"
}
}
}
}
}/custom_field_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field Group |
Request
Headers
Content-Type: application/jsonBody
{
"custom_field_group": {
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field Group"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field Group"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field Group appears on screen"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field_group": {
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1,
"id": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field Group"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field Group"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field Group appears on screen"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field Group record"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field Group was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field Group"
}
}
}
}
}/custom_field_groups/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field Group |
Response 204
Custom Field Groups ¶
/custom_field_groups{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_description_cont] (string, optional, `search_text_here`) (string, required) | Search on name or description for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field_groups": [
{
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1,
"id": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_groups": {
"type": "array"
}
}
}/custom_field_groupsExample URI
Request
Headers
Content-Type: application/jsonBody
{
"custom_field_group": {
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field Group"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field Group"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field Group appears on screen"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field_group": {
"name": "Group Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"sort_order": 1,
"id": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field_group": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field Group"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field Group"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field Group appears on screen"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field Group record"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field Group was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field Group"
}
}
}
}
}Custom Fields ¶
A Custom Field is a customised data attribute for a model object
Custom Field ¶
/custom_fields/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field |
Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field": {
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {},
"id": 1,
"document_layout_name": "name",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field"
},
"module_type": {
"type": "string",
"description": "The module name this Custom Field is for (this relates to the model name, however Member related Custom Fields would be one of: Organisation, Contact, User, Venue or Vehicle)"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field appears on screen"
},
"field_type": {
"type": "number",
"description": "The field type for this Custom Field (0 = String, 1 = Text, 2 = Number, 3 = Boolean, 4 = DateTime, 5 = Date, 6 = Time, 7 = Email, 8 = Website, 9 = List of Values, 10 = Multi List of Values, 11 = Auto Number, 12 = Currency, 13 = Telephone Number)"
},
"list_name_id": {
"type": "number",
"description": "The internal identifier of the List Name record this Custom Field relates to (only applicable when field_type is 9 or 10)"
},
"custom_field_group_id": {
"type": "number",
"description": "The internal identifier of the Custom Field Group record this Custom Field relates to"
},
"settings": {
"type": "object",
"properties": {},
"description": "Additional settings for this Custom Field record"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field record"
},
"document_layout_name": {
"type": "string",
"description": "A parameterized version of the Custom Field's name (used in document layouts and custom field objects)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field"
}
}
}
}
}/custom_fields/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field |
Request
Headers
Content-Type: application/jsonBody
{
"custom_field": {
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field"
},
"module_type": {
"type": "string",
"description": "The module name this Custom Field is for (this relates to the model name, however Member related Custom Fields would be one of: Organisation, Contact, User, Venue or Vehicle)"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field appears on screen"
},
"field_type": {
"type": "number",
"description": "The field type for this Custom Field (0 = String, 1 = Text, 2 = Number, 3 = Boolean, 4 = DateTime, 5 = Date, 6 = Time, 7 = Email, 8 = Website, 9 = List of Values, 10 = Multi List of Values, 11 = Auto Number, 12 = Currency, 13 = Telephone Number)"
},
"list_name_id": {
"type": "number",
"description": "The internal identifier of the List Name record this Custom Field relates to (only applicable when field_type is 9 or 10)"
},
"custom_field_group_id": {
"type": "number",
"description": "The internal identifier of the Custom Field Group record this Custom Field relates to"
},
"settings": {
"type": "object",
"properties": {},
"description": "Additional settings for this Custom Field record"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field": {
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {},
"id": 1,
"document_layout_name": "name",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field"
},
"module_type": {
"type": "string",
"description": "The module name this Custom Field is for (this relates to the model name, however Member related Custom Fields would be one of: Organisation, Contact, User, Venue or Vehicle)"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field appears on screen"
},
"field_type": {
"type": "number",
"description": "The field type for this Custom Field (0 = String, 1 = Text, 2 = Number, 3 = Boolean, 4 = DateTime, 5 = Date, 6 = Time, 7 = Email, 8 = Website, 9 = List of Values, 10 = Multi List of Values, 11 = Auto Number, 12 = Currency, 13 = Telephone Number)"
},
"list_name_id": {
"type": "number",
"description": "The internal identifier of the List Name record this Custom Field relates to (only applicable when field_type is 9 or 10)"
},
"custom_field_group_id": {
"type": "number",
"description": "The internal identifier of the Custom Field Group record this Custom Field relates to"
},
"settings": {
"type": "object",
"properties": {},
"description": "Additional settings for this Custom Field record"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field record"
},
"document_layout_name": {
"type": "string",
"description": "A parameterized version of the Custom Field's name (used in document layouts and custom field objects)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field"
}
}
}
}
}/custom_fields/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Custom Field |
Response 204
Custom Fields ¶
/custom_fields{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_or_description_cont] (string, optional, `search_text_here`) (string, required) | Search on name or description for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"custom_fields": [
{
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {},
"id": 1,
"document_layout_name": "name",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_fields": {
"type": "array"
}
}
}/custom_fieldsExample URI
Request
Headers
Content-Type: application/jsonBody
{
"custom_field": {
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {}
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field"
},
"module_type": {
"type": "string",
"description": "The module name this Custom Field is for (this relates to the model name, however Member related Custom Fields would be one of: Organisation, Contact, User, Venue or Vehicle)"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field appears on screen"
},
"field_type": {
"type": "number",
"description": "The field type for this Custom Field (0 = String, 1 = Text, 2 = Number, 3 = Boolean, 4 = DateTime, 5 = Date, 6 = Time, 7 = Email, 8 = Website, 9 = List of Values, 10 = Multi List of Values, 11 = Auto Number, 12 = Currency, 13 = Telephone Number)"
},
"list_name_id": {
"type": "number",
"description": "The internal identifier of the List Name record this Custom Field relates to (only applicable when field_type is 9 or 10)"
},
"custom_field_group_id": {
"type": "number",
"description": "The internal identifier of the Custom Field Group record this Custom Field relates to"
},
"settings": {
"type": "object",
"properties": {},
"description": "Additional settings for this Custom Field record"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"custom_field": {
"name": "Name",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"module_type": "Organisation",
"sort_order": 1,
"field_type": 0,
"list_name_id": 1,
"custom_field_group_id": 1,
"settings": {},
"id": 1,
"document_layout_name": "name",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"custom_field": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Custom Field"
},
"description": {
"type": "string",
"description": "A longer description of the Custom Field"
},
"module_type": {
"type": "string",
"description": "The module name this Custom Field is for (this relates to the model name, however Member related Custom Fields would be one of: Organisation, Contact, User, Venue or Vehicle)"
},
"sort_order": {
"type": "number",
"description": "The order this Custom Field appears on screen"
},
"field_type": {
"type": "number",
"description": "The field type for this Custom Field (0 = String, 1 = Text, 2 = Number, 3 = Boolean, 4 = DateTime, 5 = Date, 6 = Time, 7 = Email, 8 = Website, 9 = List of Values, 10 = Multi List of Values, 11 = Auto Number, 12 = Currency, 13 = Telephone Number)"
},
"list_name_id": {
"type": "number",
"description": "The internal identifier of the List Name record this Custom Field relates to (only applicable when field_type is 9 or 10)"
},
"custom_field_group_id": {
"type": "number",
"description": "The internal identifier of the Custom Field Group record this Custom Field relates to"
},
"settings": {
"type": "object",
"properties": {},
"description": "Additional settings for this Custom Field record"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Custom Field record"
},
"document_layout_name": {
"type": "string",
"description": "A parameterized version of the Custom Field's name (used in document layouts and custom field objects)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Custom Field was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Custom Field"
}
}
}
}
}Discount Categories ¶
A Discount Category record describes a collection of rules and mappings that are used to evaluate whether a discount percentage should be applied during order and invoice entry. Discount Category records are read-only.
Discount Category ¶
/discount_categories/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired discount category |
Response 200
Headers
Content-Type: application/jsonBody
{
"discount category": {
"name": "Default",
"active": true,
"discount_rules": [
{
"discount_category_id": 1,
"starts_at": "2018-06-25",
"ends_at": "2018-06-25",
"quantity_from": "10",
"quantity_to": "100",
"percent": "10.5",
"priority": 1,
"discount_rule_maps": [
{
"discount_rule_id": 1,
"map_type": 0,
"mappable_id": 8,
"mappable_type": "ProductGroup",
"id": 1
}
],
"id": 1
}
],
"id": 1,
"created_at": "2018-06-25T11:14:32.087Z",
"updated_at": "2018-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discount category": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the Discount Category"
},
"active": {
"type": "boolean",
"description": "Is this Discount Category active? Inactive categories are hidden by default."
},
"discount_rules": {
"type": "array",
"description": "A collection of Discount Rule records for this category"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Discount Category record"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Discount Category record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Discount Category record was last updated"
}
}
}
}
}Discount Categories ¶
/discount_categories{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_cont] (string, optional, `search_text_here`) (string, required) | Search on name for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"discount_categories": [
{
"name": "Default",
"active": true,
"discount_rules": [
{
"discount_category_id": 1,
"starts_at": "2018-06-25",
"ends_at": "2018-06-25",
"quantity_from": "10",
"quantity_to": "100",
"percent": "10.5",
"priority": 1,
"discount_rule_maps": [
{
"discount_rule_id": 1,
"map_type": 0,
"mappable_id": 8,
"mappable_type": "ProductGroup",
"id": 1
}
],
"id": 1
}
],
"id": 1,
"created_at": "2018-06-25T11:14:32.087Z",
"updated_at": "2018-07-13T11:14:32.095Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discount_categories": {
"type": "array"
}
}
}Discussions ¶
A discussion contains comments received or sent related to an object within Current (e.g. Organisation, Product, Opportunity, Invoice etc.)
To remove existing participants from a discussion object, include the attribute _destroy with a value of 1 along with the participant record id when performing an update operation, for example: -
{
"discussion": {
"id": 1,
"participants": [
{
"id": 1,
"_destroy": 1
}
]
}
}
Discussion ¶
/discussions/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired discussion |
Response 200
Headers
Content-Type: application/jsonBody
{
"discussion": {
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"last_comment_id": 1,
"reply_count": 1,
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Discussion"
}
],
"created_by": 1,
"id": 1,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussion": {
"type": "object",
"properties": {
"discussable_id": {
"type": "number",
"description": "The internal identifier of the related record for the discussion"
},
"discussable_type": {
"type": "string",
"description": "The type of discussable record"
},
"subject": {
"type": "string",
"description": "The discussion subject"
},
"last_comment_id": {
"type": "number",
"description": "The internal identifier of the latest Comment (reply) record for the discussion"
},
"reply_count": {
"type": "number",
"description": "The number of reply Comment records present for the discussion"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this discussion"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Discussion record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this discussion"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Discussion was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Discussion"
}
},
"required": [
"subject"
]
}
}
}/discussions/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired discussion |
Request
Headers
Content-Type: application/jsonBody
{
"discussion": {
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"last_comment_id": 1,
"reply_count": 1,
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Discussion"
}
],
"created_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussion": {
"type": "object",
"properties": {
"discussable_id": {
"type": "number",
"description": "The internal identifier of the related record for the discussion"
},
"discussable_type": {
"type": "string",
"description": "The type of discussable record"
},
"subject": {
"type": "string",
"description": "The discussion subject"
},
"last_comment_id": {
"type": "number",
"description": "The internal identifier of the latest Comment (reply) record for the discussion"
},
"reply_count": {
"type": "number",
"description": "The number of reply Comment records present for the discussion"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this discussion"
}
},
"required": [
"subject"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"discussion": {
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"last_comment_id": 1,
"reply_count": 1,
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Discussion"
}
],
"created_by": 1,
"id": 1,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussion": {
"type": "object",
"properties": {
"discussable_id": {
"type": "number",
"description": "The internal identifier of the related record for the discussion"
},
"discussable_type": {
"type": "string",
"description": "The type of discussable record"
},
"subject": {
"type": "string",
"description": "The discussion subject"
},
"last_comment_id": {
"type": "number",
"description": "The internal identifier of the latest Comment (reply) record for the discussion"
},
"reply_count": {
"type": "number",
"description": "The number of reply Comment records present for the discussion"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this discussion"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Discussion record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this discussion"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Discussion was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Discussion"
}
},
"required": [
"subject"
]
}
}
}/discussions/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired discussion |
Response 204
Discussions ¶
/discussions{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[subject_cont] (string, optional, `search_text_here`) (string, required) | Search on subject for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"discussions": [
{
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"last_comment_id": 1,
"reply_count": 1,
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Discussion"
}
],
"created_by": 1,
"id": 1,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussions": {
"type": "array"
}
}
}/discussionsIt is possible to set the creator of the discussion and first_comment by including the created_by attribute with the ID of a Member record.
When the participants attribute is not supplied, the method will create a participant for the discussion creator so the member must have a work email.
Example URI
Request
Headers
Content-Type: application/jsonBody
{
"discussion": {
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"first_comment": {
"remark": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"created_by": 1
},
"participants": [
{
"member_id": 1,
"mute": false
}
],
"created_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussion": {
"type": "object",
"properties": {
"discussable_id": {
"type": "number",
"description": "The internal identifier of the related record for the discussion"
},
"discussable_type": {
"type": "string",
"description": "The type of discussable record"
},
"subject": {
"type": "string",
"description": "The discussion subject"
},
"first_comment": {
"type": "object",
"properties": {
"remark": {
"type": "string",
"description": "The comment text"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this comment"
}
},
"description": "The discussion's first comment"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this discussion"
}
},
"required": [
"discussable_id",
"discussable_type",
"subject",
"first_comment"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"discussion": {
"discussable_id": 39,
"discussable_type": "Member",
"subject": "Enable dynamic e-tailers",
"last_comment_id": 1,
"reply_count": 1,
"participants": [
{
"uuid": "55dcb830-3d2f-0133-6a66-7831c1cfb734",
"assignment_id": 110,
"member_id": 1,
"mute": false,
"id": 1,
"member_name": "Steve Smith",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"assignment_type": "Discussion"
}
],
"created_by": 1,
"id": 1,
"updated_by": 1,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"discussion": {
"type": "object",
"properties": {
"discussable_id": {
"type": "number",
"description": "The internal identifier of the related record for the discussion"
},
"discussable_type": {
"type": "string",
"description": "The type of discussable record"
},
"subject": {
"type": "string",
"description": "The discussion subject"
},
"last_comment_id": {
"type": "number",
"description": "The internal identifier of the latest Comment (reply) record for the discussion"
},
"reply_count": {
"type": "number",
"description": "The number of reply Comment records present for the discussion"
},
"participants": {
"type": "array",
"description": "An array of participants for this activity"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who created this discussion"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Discussion record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this discussion"
},
"created_at": {
"type": "string",
"description": "(Readonly) The date & time when the Discussion was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) The date & time of the last update to the Discussion"
}
},
"required": [
"subject"
]
}
}
}Documents ¶
A Document record describes a document layout used for printed output. Document records are read-only.
Document ¶
/documents/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Document |
Response 200
Headers
Content-Type: application/jsonBody
{
"document": {
"name": "Quotation",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"module_type": "Opportunity",
"system": true,
"active": true,
"layout": "<div><p class=\"large-para\">I am a document layout</p></div>",
"header_layout": "",
"footer_layout": "",
"stylesheet": "<style type=\"text/css\">.large-para { font-size: 36px; }</style>",
"page_size": "Letter",
"orientation": "Portrait",
"states": [],
"statuses": [],
"types": [],
"membership_types": [],
"page_width": 210,
"page_height": 297,
"margin_top": 1,
"margin_left": 1,
"margin_right": 1,
"margin_bottom": 1,
"colors": [],
"fields": [],
"layout_flags": [],
"grouped_fields": [],
"grouped_layout_flags": [],
"filename": "",
"roles": [],
"use_for_approval": true,
"require_signature": true,
"approval_custom_fields": [],
"approval_accept_text": "",
"approval_decline_text": "",
"use_for_signing": false,
"default_signing_message": "",
"days_to_sign": 7,
"reminder_frequency": 2,
"library_document_ids": [],
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"document": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The document layout name"
},
"description": {
"type": "string",
"description": "The document long description"
},
"module_type": {
"type": "string",
"description": "The module type of the document record (e.g. Opportunity, Invoice, Product, Member, Activity etc.)"
},
"system": {
"type": "boolean",
"description": "Is this document layout a system record?"
},
"active": {
"type": "boolean",
"description": "Is this document layout active?"
},
"layout": {
"type": "string",
"description": "The body html layout"
},
"header_layout": {
"type": "string",
"description": "The header html layout (repeated at the top of each page)"
},
"footer_layout": {
"type": "string",
"description": "The footer html layout (repeated at the bottom of each page)"
},
"stylesheet": {
"type": "string",
"description": "The document css stylesheet"
},
"page_size": {
"type": "string",
"description": "The document layout page size (A4, Letter, Custom)"
},
"orientation": {
"type": "string",
"description": "The document layout page orientation (Portrait or Landscape)"
},
"states": {
"type": "array",
"description": "An array of record states this document layout can be used for - see Opportunity State for possible integer values"
},
"statuses": {
"type": "array",
"description": "An array of record statuses this document layout can be used for - see Opportunity, Invoice & Project Statuses for possible integer values"
},
"types": {
"type": "array",
"description": "An array of record types this document layout can be used for - see Invoice and Quarantine Type for possible integer values"
},
"membership_types": {
"type": "array",
"description": "An array of membership types this document layout can be used for - see Member Membership Type for possible string values"
},
"page_width": {
"type": "number",
"description": "The page width in millimeters (only applicable when page_size is Custom)"
},
"page_height": {
"type": "number",
"description": "The page height in millimeters (only applicable when page_size is Custom)"
},
"margin_top": {
"type": "number",
"description": "The top margin in millimeters (the area available to the header_layout)"
},
"margin_left": {
"type": "number",
"description": "The left margin in millimeters"
},
"margin_right": {
"type": "number",
"description": "The right margin in millimeters"
},
"margin_bottom": {
"type": "number",
"description": "The bottom margin in millimeters (the area available to the footer_layout)"
},
"colors": {
"type": "array",
"description": "An array of key/value pairs for color codes used within this document layout"
},
"fields": {
"type": "array",
"description": "An array of key/value pairs for additional text messages used within this document layout"
},
"layout_flags": {
"type": "array",
"description": "An array of key/value pairs for logic flags used within this document layout"
},
"grouped_fields": {
"type": "array",
"description": "An array of hashes of key/value pairs for grouped text messages used within this document layout"
},
"grouped_layout_flags": {
"type": "array",
"description": "An array of hashes of key/value pairs for grouped logic flags used within this document layout"
},
"filename": {
"type": "string",
"description": "The original filename of the document layout (only applicable to system document layouts)"
},
"roles": {
"type": "array",
"description": "An array of Role records IDs that have access to this document layout"
},
"use_for_approval": {
"type": "boolean",
"description": "Is document approval enabled for this document layout?"
},
"require_signature": {
"type": "boolean",
"description": "Can a signature be captured during approval for this document layout?"
},
"approval_custom_fields": {
"type": "array",
"description": "An array of Custom Field records IDs that should shown during document approval"
},
"approval_accept_text": {
"type": "string",
"description": "The message shown during document approval accept"
},
"approval_decline_text": {
"type": "string",
"description": "The message shown during document approval decline"
},
"use_for_signing": {
"type": "boolean",
"description": "Use this document layout with Adobe Sign?"
},
"default_signing_message": {
"type": "string",
"description": "The default discussion message to be used when sending this document for signing (Adobe Sign)"
},
"days_to_sign": {
"type": "number",
"description": "The number of days before the document must be signed (Adobe Sign)"
},
"reminder_frequency": {
"type": "number",
"description": "The reminder frequency (0=None, 1=Daily, 2=Weekly) (Adobe Sign)"
},
"library_document_ids": {
"type": "array",
"description": "An array Adobe Sign document Library IDs to include with this document when sending for signing (Adobe Sign)"
},
"created_at": {
"type": "string",
"description": "The date & time when the Document was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Document"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Document record"
}
}
}
}
}Documents ¶
/documents{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_cont] (string, optional, `search_text_here`) (string, required) | Search on name for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"documents": [
{
"name": "Quotation",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"module_type": "Opportunity",
"system": true,
"active": true,
"layout": "<div><p class=\"large-para\">I am a document layout</p></div>",
"header_layout": "",
"footer_layout": "",
"stylesheet": "<style type=\"text/css\">.large-para { font-size: 36px; }</style>",
"page_size": "Letter",
"orientation": "Portrait",
"states": [],
"statuses": [],
"types": [],
"membership_types": [],
"page_width": 210,
"page_height": 297,
"margin_top": 1,
"margin_left": 1,
"margin_right": 1,
"margin_bottom": 1,
"colors": [],
"fields": [],
"layout_flags": [],
"grouped_fields": [],
"grouped_layout_flags": [],
"filename": "",
"roles": [],
"use_for_approval": true,
"require_signature": true,
"approval_custom_fields": [],
"approval_accept_text": "",
"approval_decline_text": "",
"use_for_signing": false,
"default_signing_message": "",
"days_to_sign": 7,
"reminder_frequency": 2,
"library_document_ids": [],
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"documents": {
"type": "array"
}
}
}Inspections ¶
An Inspection record represents a test or inspection that should be periodically carried out against serialised rental assets. Task list field_type values are 0=String, 1=Number, 2=Boolean.
Inspection ¶
/inspections/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection |
Response 200
Headers
Content-Type: application/jsonBody
{
"inspection": {
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
],
"id": 1,
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The inspection name"
},
"mandatory": {
"type": "boolean",
"description": "Is this inspection mandatory?"
},
"active": {
"type": "boolean",
"description": "Is this inspection active?"
},
"auto_pass": {
"type": "boolean",
"description": "When new stock is added, automatically pass this inspection?"
},
"schedule_type": {
"type": "number",
"description": "The schedule type (0=Day, 1=Week, 2=Month, 3=Year)"
},
"schedule_interval": {
"type": "number",
"description": "The quantity of schedule type units between inspections"
},
"task_list": {
"type": "array",
"description": "A list of inspection tasks with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values) and 'list_name_id' (internal identifier of a List Name record for a List of Values task)"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection record"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was last updated"
}
}
}
}
}/inspections/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection |
Request
Headers
Content-Type: application/jsonBody
{
"inspection": {
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The inspection name"
},
"mandatory": {
"type": "boolean",
"description": "Is this inspection mandatory?"
},
"active": {
"type": "boolean",
"description": "Is this inspection active?"
},
"auto_pass": {
"type": "boolean",
"description": "When new stock is added, automatically pass this inspection?"
},
"schedule_type": {
"type": "number",
"description": "The schedule type (0=Day, 1=Week, 2=Month, 3=Year)"
},
"schedule_interval": {
"type": "number",
"description": "The quantity of schedule type units between inspections"
},
"task_list": {
"type": "array",
"description": "A list of inspection tasks with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values) and 'list_name_id' (internal identifier of a List Name record for a List of Values task)"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"inspection": {
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
],
"id": 1,
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The inspection name"
},
"mandatory": {
"type": "boolean",
"description": "Is this inspection mandatory?"
},
"active": {
"type": "boolean",
"description": "Is this inspection active?"
},
"auto_pass": {
"type": "boolean",
"description": "When new stock is added, automatically pass this inspection?"
},
"schedule_type": {
"type": "number",
"description": "The schedule type (0=Day, 1=Week, 2=Month, 3=Year)"
},
"schedule_interval": {
"type": "number",
"description": "The quantity of schedule type units between inspections"
},
"task_list": {
"type": "array",
"description": "A list of inspection tasks with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values) and 'list_name_id' (internal identifier of a List Name record for a List of Values task)"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection record"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was last updated"
}
}
}
}
}/inspections/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection |
Response 204
Inspections ¶
/inspections{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[name_cont] (string, optional, `search_text_here`) (string, required) | Search on name for matching records |
Response 200
Headers
Content-Type: application/jsonBody
{
"inspections": [
{
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
],
"id": 1,
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspections": {
"type": "array"
}
}
}/inspectionsExample URI
Request
Headers
Content-Type: application/jsonBody
{
"inspection": {
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The inspection name"
},
"mandatory": {
"type": "boolean",
"description": "Is this inspection mandatory?"
},
"active": {
"type": "boolean",
"description": "Is this inspection active?"
},
"auto_pass": {
"type": "boolean",
"description": "When new stock is added, automatically pass this inspection?"
},
"schedule_type": {
"type": "number",
"description": "The schedule type (0=Day, 1=Week, 2=Month, 3=Year)"
},
"schedule_interval": {
"type": "number",
"description": "The quantity of schedule type units between inspections"
},
"task_list": {
"type": "array",
"description": "A list of inspection tasks with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values) and 'list_name_id' (internal identifier of a List Name record for a List of Values task)"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"inspection": {
"name": "Inspection Name",
"mandatory": true,
"active": true,
"auto_pass": true,
"schedule_type": 2,
"schedule_interval": 6,
"task_list": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1
}
],
"id": 1,
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The inspection name"
},
"mandatory": {
"type": "boolean",
"description": "Is this inspection mandatory?"
},
"active": {
"type": "boolean",
"description": "Is this inspection active?"
},
"auto_pass": {
"type": "boolean",
"description": "When new stock is added, automatically pass this inspection?"
},
"schedule_type": {
"type": "number",
"description": "The schedule type (0=Day, 1=Week, 2=Month, 3=Year)"
},
"schedule_interval": {
"type": "number",
"description": "The quantity of schedule type units between inspections"
},
"task_list": {
"type": "array",
"description": "A list of inspection tasks with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values) and 'list_name_id' (internal identifier of a List Name record for a List of Values task)"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection record"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection record was last updated"
}
}
}
}
}Inspection Results ¶
An Inspection Result record represents a test or inspection result that has been recorded.
Inspection Result ¶
/inspection_results/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection Result |
Response 200
Headers
Content-Type: application/jsonBody
{
"inspection_result": {
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
],
"id": 1,
"updated_by": 1,
"created_at": "2020-06-25T11:14:32.087Z",
"updated_at": "2020-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_result": {
"type": "object",
"properties": {
"inspection_id": {
"type": "number",
"description": "The internal identifier of the Inspection record this inspection result is related to"
},
"stock_level_id": {
"type": "number",
"description": "The internal identifier of the Stock Level record this inspection result is related to"
},
"inspection_at": {
"type": "string",
"description": "The date and time of the inspection result"
},
"passed": {
"type": "boolean",
"description": "Was this inspection result an overall pass?"
},
"description": {
"type": "string",
"description": "The inspection result long description"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who performed this inspection"
},
"task_list_results": {
"type": "array",
"description": "A list of inspection task results with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values), 'list_name_id' (internal identifier of a List Name record for a List of Values task) and 'value'"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection Result record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this inspection result"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was last updated"
}
}
}
}
}/inspection_results/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection Result |
Request
Headers
Content-Type: application/jsonBody
{
"inspection_result": {
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_result": {
"type": "object",
"properties": {
"inspection_id": {
"type": "number",
"description": "The internal identifier of the Inspection record this inspection result is related to"
},
"stock_level_id": {
"type": "number",
"description": "The internal identifier of the Stock Level record this inspection result is related to"
},
"inspection_at": {
"type": "string",
"description": "The date and time of the inspection result"
},
"passed": {
"type": "boolean",
"description": "Was this inspection result an overall pass?"
},
"description": {
"type": "string",
"description": "The inspection result long description"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who performed this inspection"
},
"task_list_results": {
"type": "array",
"description": "A list of inspection task results with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values), 'list_name_id' (internal identifier of a List Name record for a List of Values task) and 'value'"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"inspection_result": {
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
],
"id": 1,
"updated_by": 1,
"created_at": "2020-06-25T11:14:32.087Z",
"updated_at": "2020-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_result": {
"type": "object",
"properties": {
"inspection_id": {
"type": "number",
"description": "The internal identifier of the Inspection record this inspection result is related to"
},
"stock_level_id": {
"type": "number",
"description": "The internal identifier of the Stock Level record this inspection result is related to"
},
"inspection_at": {
"type": "string",
"description": "The date and time of the inspection result"
},
"passed": {
"type": "boolean",
"description": "Was this inspection result an overall pass?"
},
"description": {
"type": "string",
"description": "The inspection result long description"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who performed this inspection"
},
"task_list_results": {
"type": "array",
"description": "A list of inspection task results with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values), 'list_name_id' (internal identifier of a List Name record for a List of Values task) and 'value'"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection Result record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this inspection result"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was last updated"
}
}
}
}
}/inspection_results/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired Inspection Result |
Response 204
Inspection Results ¶
/inspection_results{?page,per_page}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
q[stock_level_id] (string, optional) | search_text_here | Search for test results for a given stock level id |
Response 200
Headers
Content-Type: application/jsonBody
{
"inspection_results": [
{
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
],
"id": 1,
"updated_by": 1,
"created_at": "2020-06-25T11:14:32.087Z",
"updated_at": "2020-07-13T11:14:32.095Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_results": {
"type": "array"
}
}
}/inspection_resultsIt is possible to set the creator (tested by) of an inspection result by including the created_by attribute with the ID of a Member record.
The member record must be either a user, contact or an organisation.
Example URI
Request
Headers
Content-Type: application/jsonBody
{
"inspection_result": {
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
]
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_result": {
"type": "object",
"properties": {
"inspection_id": {
"type": "number",
"description": "The internal identifier of the Inspection record this inspection result is related to"
},
"stock_level_id": {
"type": "number",
"description": "The internal identifier of the Stock Level record this inspection result is related to"
},
"inspection_at": {
"type": "string",
"description": "The date and time of the inspection result"
},
"passed": {
"type": "boolean",
"description": "Was this inspection result an overall pass?"
},
"description": {
"type": "string",
"description": "The inspection result long description"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who performed this inspection"
},
"task_list_results": {
"type": "array",
"description": "A list of inspection task results with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values), 'list_name_id' (internal identifier of a List Name record for a List of Values task) and 'value'"
}
}
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"inspection_result": {
"inspection_id": 1,
"stock_level_id": 1,
"inspection_at": "2020-06-25T11:14:32.087Z",
"passed": true,
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"created_by": 1,
"task_list_results": [
{
"name": "Task name",
"field_type": 3,
"list_name_id": 1,
"value": "1"
}
],
"id": 1,
"updated_by": 1,
"created_at": "2020-06-25T11:14:32.087Z",
"updated_at": "2020-07-13T11:14:32.095Z"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"inspection_result": {
"type": "object",
"properties": {
"inspection_id": {
"type": "number",
"description": "The internal identifier of the Inspection record this inspection result is related to"
},
"stock_level_id": {
"type": "number",
"description": "The internal identifier of the Stock Level record this inspection result is related to"
},
"inspection_at": {
"type": "string",
"description": "The date and time of the inspection result"
},
"passed": {
"type": "boolean",
"description": "Was this inspection result an overall pass?"
},
"description": {
"type": "string",
"description": "The inspection result long description"
},
"created_by": {
"type": "number",
"description": "The internal identifier of the Member record related to the member who performed this inspection"
},
"task_list_results": {
"type": "array",
"description": "A list of inspection task results with a 'name', 'field_type' (0=String, 1=Number, 2=Boolean, 3=List of Values), 'list_name_id' (internal identifier of a List Name record for a List of Values task) and 'value'"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Inspection Result record"
},
"updated_by": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record related to the member who updated this inspection result"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Inspection Result record was last updated"
}
}
}
}
}Invoices/Credits ¶
An invoice record contains header information for an Invoice or Credit Note
Invoice ¶
/invoices/{id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | The ID of the desired invoice/credit |
include[] (string, optional) | invoice_items | Override association attributes you want included in the response, use multiple |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice": {
"type": "object",
"properties": {
"store_id": {
"type": "number",
"description": "The internal identifier of the Store record this invoice is related to"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"venue_id": {
"type": "number",
"description": "The internal identifier of the Member Venue record this invoice is related to"
},
"tax_class_id": {
"type": "number",
"description": "The internal identifier of the Tax Class record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"description": {
"type": "string",
"description": "The invoice long description"
},
"number": {
"type": "string",
"description": "(Readonly) The invoice number"
},
"invoice_type": {
"type": "number",
"description": "The invoice type (0 = Invoice, 1 = Credit Note)"
},
"invoice_type_name": {
"type": "string",
"description": "(Readonly) The invoice type name"
},
"invoiced_at": {
"type": "string",
"description": "The invoice date/time"
},
"due_at": {
"type": "string",
"description": "The invoice due date/time"
},
"status": {
"type": "number",
"description": "(Readonly) The invoice status (0 = Open, 10 = Issued, 20 = Paid, 30 = Posted, 40 = Voided)"
},
"status_name": {
"type": "string",
"description": "(Readonly) The invoice status name"
},
"reference": {
"type": "string",
"description": "The customer reference for this invoice"
},
"external_description": {
"type": "string",
"description": "The invoice long external description"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
},
"charge_total": {
"type": "string",
"description": "(Readonly) The invoice charge total (this total may include or exclude tax - see prices_include_tax flag below)"
},
"charge_excluding_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total excluding tax"
},
"charge_including_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total including tax"
},
"tax_total": {
"type": "string",
"description": "(Readonly) The invoice tax total"
},
"prices_include_tax": {
"type": "boolean",
"description": "(Readonly) Flag to indicate whether the prices on this invoice include tax or not"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"owner": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member User record detail"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Organisation record detail"
},
"billing_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "(Readonly) The Billing Address object for this invoice"
},
"venue": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
}
},
"description": "The venue member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Venue record detail"
},
"invoice_taxes": {
"type": "array",
"description": "The tax breakdown for this invoice"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice record"
}
},
"required": [
"store_id",
"member_id",
"subject",
"invoice_type",
"invoiced_at",
"due_at"
]
}
}
}Invoices ¶
/invoices{?page,per_page,filtermode,view_id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
page (number, optional) | 1 | The requested page number |
per_page (number, optional) | 20 | The number of records to return for the requested page |
filtermode (string, optional) | all | A built in filtermode name (e.g. live, inactive, all, invoices, credits) |
view_id (number, optional) | 1 | The record id of a custom view |
q[subject_or_number_or_description_or_member_name_or_tags_name_cont] (string, optional, `search_text_here`) (string, required) | Search on subject, number, description, member organisation name or tags for matching records | |
include[] (string, optional) | invoice_items | Override association attributes you want included in the response, use multiple |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoices": [
{
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoices": {
"type": "array"
}
}
}/invoicesThis method will create an Open status Invoice or Credit. You may provide additional invoice attributes to those shown in the example request, however those shown are the minimum required to create an invoice.
When creating an invoice for an opportunity the additional parameters are required (opportunity_id, group_by, part_invoice_type), however you need only provide owned_by in the invoice attributes.
Values for group_by are: Opportunity_Item => 0, Opportunity_Group => 1, Product_Group => 2, Opportunity => 3.
Values for part_invoice_type are: Standard => 0, Part => 1, Final => 2).
When creating a part invoice, you must provide a value for part_invoice_amount.
Example URI
Request
Headers
Content-Type: application/jsonBody
{
"opportunity_id": 1,
"group_by": 0,
"part_invoice_type": 0,
"part_invoice_amount": "1000.00",
"invoice": {
"member_id": 1,
"billing_address_id": 137,
"subject": "Aggregate b2c paradigms",
"owned_by": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"opportunity_id": {
"type": "number"
},
"group_by": {
"type": "number"
},
"part_invoice_type": {
"type": "number"
},
"part_invoice_amount": {
"type": "string"
},
"invoice": {
"type": "object",
"properties": {
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
}
},
"required": [
"member_id",
"billing_address_id",
"subject",
"owned_by"
]
}
}
}Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice": {
"type": "object",
"properties": {
"store_id": {
"type": "number",
"description": "The internal identifier of the Store record this invoice is related to"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"venue_id": {
"type": "number",
"description": "The internal identifier of the Member Venue record this invoice is related to"
},
"tax_class_id": {
"type": "number",
"description": "The internal identifier of the Tax Class record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"description": {
"type": "string",
"description": "The invoice long description"
},
"number": {
"type": "string",
"description": "(Readonly) The invoice number"
},
"invoice_type": {
"type": "number",
"description": "The invoice type (0 = Invoice, 1 = Credit Note)"
},
"invoice_type_name": {
"type": "string",
"description": "(Readonly) The invoice type name"
},
"invoiced_at": {
"type": "string",
"description": "The invoice date/time"
},
"due_at": {
"type": "string",
"description": "The invoice due date/time"
},
"status": {
"type": "number",
"description": "(Readonly) The invoice status (0 = Open, 10 = Issued, 20 = Paid, 30 = Posted, 40 = Voided)"
},
"status_name": {
"type": "string",
"description": "(Readonly) The invoice status name"
},
"reference": {
"type": "string",
"description": "The customer reference for this invoice"
},
"external_description": {
"type": "string",
"description": "The invoice long external description"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
},
"charge_total": {
"type": "string",
"description": "(Readonly) The invoice charge total (this total may include or exclude tax - see prices_include_tax flag below)"
},
"charge_excluding_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total excluding tax"
},
"charge_including_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total including tax"
},
"tax_total": {
"type": "string",
"description": "(Readonly) The invoice tax total"
},
"prices_include_tax": {
"type": "boolean",
"description": "(Readonly) Flag to indicate whether the prices on this invoice include tax or not"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"owner": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member User record detail"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Organisation record detail"
},
"billing_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "(Readonly) The Billing Address object for this invoice"
},
"venue": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
}
},
"description": "The venue member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Venue record detail"
},
"invoice_taxes": {
"type": "array",
"description": "The tax breakdown for this invoice"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice record"
}
},
"required": [
"store_id",
"member_id",
"subject",
"invoice_type",
"invoiced_at",
"due_at"
]
}
}
}Invoice filtering examples ¶
/invoices/api/v1/invoices?q[invoice_items_source_type_eq]=Opportunity&q[invoice_items_source_id_eq]=1261
Example URI
Prepare Invoice/Credit Document ¶
This method will return the latest Invoice Document for the given Document layout ID, or prepare a new one if the invoice or credit has changed since the last document was prepared.
/invoices/{id}/prepare_document{?document_id}Example URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 | |
document_id (number, required) | 1 |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice_document": {
"invoice_id": 1,
"document_id": 1,
"data": {
"header": "<div><p>Header dummy html</p></div>",
"body": "<div><p>Body dummy html</p></div>",
"footer": "<div><p>Footer dummy html</p></div>",
"stylesheet": "<style type=\"text/css\">.large-para { font-size: 36px; }</style>"
},
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice_document": {
"type": "object",
"properties": {
"invoice_id": {
"type": "number",
"description": "The internal identifier of the Invoice record this Invoice Document relates to"
},
"document_id": {
"type": "number",
"description": "The internal identifier of the Document record this Invoice Document relates to"
},
"data": {
"type": "object",
"properties": {
"header": {
"type": "string",
"description": "The HTML for the header section"
},
"body": {
"type": "string",
"description": "The HTML for the body section"
},
"footer": {
"type": "string",
"description": "The HTML for the footer section"
},
"stylesheet": {
"type": "string",
"description": "The CSS stylesheet for the document"
}
},
"description": "The HTML and CSS of this Invoice Document"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice Document was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice Document"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice Document record"
}
}
}
}
}Issue Invoice/Credit ¶
This method will change the status of an invoice/credit to Issued and assign it the next invoice/credit number from your sequence.
/invoices/{id}/issueExample URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice": {
"type": "object",
"properties": {
"store_id": {
"type": "number",
"description": "The internal identifier of the Store record this invoice is related to"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"venue_id": {
"type": "number",
"description": "The internal identifier of the Member Venue record this invoice is related to"
},
"tax_class_id": {
"type": "number",
"description": "The internal identifier of the Tax Class record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"description": {
"type": "string",
"description": "The invoice long description"
},
"number": {
"type": "string",
"description": "(Readonly) The invoice number"
},
"invoice_type": {
"type": "number",
"description": "The invoice type (0 = Invoice, 1 = Credit Note)"
},
"invoice_type_name": {
"type": "string",
"description": "(Readonly) The invoice type name"
},
"invoiced_at": {
"type": "string",
"description": "The invoice date/time"
},
"due_at": {
"type": "string",
"description": "The invoice due date/time"
},
"status": {
"type": "number",
"description": "(Readonly) The invoice status (0 = Open, 10 = Issued, 20 = Paid, 30 = Posted, 40 = Voided)"
},
"status_name": {
"type": "string",
"description": "(Readonly) The invoice status name"
},
"reference": {
"type": "string",
"description": "The customer reference for this invoice"
},
"external_description": {
"type": "string",
"description": "The invoice long external description"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
},
"charge_total": {
"type": "string",
"description": "(Readonly) The invoice charge total (this total may include or exclude tax - see prices_include_tax flag below)"
},
"charge_excluding_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total excluding tax"
},
"charge_including_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total including tax"
},
"tax_total": {
"type": "string",
"description": "(Readonly) The invoice tax total"
},
"prices_include_tax": {
"type": "boolean",
"description": "(Readonly) Flag to indicate whether the prices on this invoice include tax or not"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"owner": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member User record detail"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Organisation record detail"
},
"billing_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "(Readonly) The Billing Address object for this invoice"
},
"venue": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
}
},
"description": "The venue member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Venue record detail"
},
"invoice_taxes": {
"type": "array",
"description": "The tax breakdown for this invoice"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice record"
}
},
"required": [
"store_id",
"member_id",
"subject",
"invoice_type",
"invoiced_at",
"due_at"
]
}
}
}Mark Invoice Paid ¶
This method will change the status of an invoice from Issued to Paid.
/invoices/{id}/mark_paidExample URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice": {
"type": "object",
"properties": {
"store_id": {
"type": "number",
"description": "The internal identifier of the Store record this invoice is related to"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"venue_id": {
"type": "number",
"description": "The internal identifier of the Member Venue record this invoice is related to"
},
"tax_class_id": {
"type": "number",
"description": "The internal identifier of the Tax Class record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"description": {
"type": "string",
"description": "The invoice long description"
},
"number": {
"type": "string",
"description": "(Readonly) The invoice number"
},
"invoice_type": {
"type": "number",
"description": "The invoice type (0 = Invoice, 1 = Credit Note)"
},
"invoice_type_name": {
"type": "string",
"description": "(Readonly) The invoice type name"
},
"invoiced_at": {
"type": "string",
"description": "The invoice date/time"
},
"due_at": {
"type": "string",
"description": "The invoice due date/time"
},
"status": {
"type": "number",
"description": "(Readonly) The invoice status (0 = Open, 10 = Issued, 20 = Paid, 30 = Posted, 40 = Voided)"
},
"status_name": {
"type": "string",
"description": "(Readonly) The invoice status name"
},
"reference": {
"type": "string",
"description": "The customer reference for this invoice"
},
"external_description": {
"type": "string",
"description": "The invoice long external description"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
},
"charge_total": {
"type": "string",
"description": "(Readonly) The invoice charge total (this total may include or exclude tax - see prices_include_tax flag below)"
},
"charge_excluding_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total excluding tax"
},
"charge_including_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total including tax"
},
"tax_total": {
"type": "string",
"description": "(Readonly) The invoice tax total"
},
"prices_include_tax": {
"type": "boolean",
"description": "(Readonly) Flag to indicate whether the prices on this invoice include tax or not"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"owner": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member User record detail"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Organisation record detail"
},
"billing_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "(Readonly) The Billing Address object for this invoice"
},
"venue": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
}
},
"description": "The venue member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Venue record detail"
},
"invoice_taxes": {
"type": "array",
"description": "The tax breakdown for this invoice"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice record"
}
},
"required": [
"store_id",
"member_id",
"subject",
"invoice_type",
"invoiced_at",
"due_at"
]
}
}
}Mark Invoice Unpaid ¶
This method will change the status of an invoice from Paid to Issued.
/invoices/{id}/mark_unpaidExample URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"member": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"billing_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z"
},
"venue": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"address": "[email protected]",
"type_id": 4001,
"email_type_name": "Work",
"id": 1
}
],
"phones": [
{
"number": "+44 115 9793399",
"type_id": 6001,
"phone_type_name": "Work",
"id": 1
}
],
"links": [
{
"address": "www.facebook.com/profile.php?id=566828251",
"type_id": 5002,
"link_type_name": "Facebook",
"id": 1
}
],
"addresses": [
{
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3002,
"address_type_name": "Billing",
"created_at": "2017-06-29T10:00:00.000Z",
"updated_at": "2017-06-29T10:30:00.000Z",
"id": 1
}
],
"service_stock_levels": [
{
"item_id": 10,
"store_id": 1,
"member_id": 1,
"asset_number": "Chris Bralton",
"serial_number": "",
"location": "",
"stock_type": 3,
"stock_category": 60,
"quantity_held": "1.0",
"quantity_allocated": "0.0",
"quantity_unavailable": "0.0",
"quantity_on_order": "0.0",
"starts_at": "",
"ends_at": "",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "StockLevel"
},
"custom_fields": {},
"id": 487,
"item_name": "Sound Engineer",
"store_name": "Nottingham",
"stock_type_name": "Service",
"stock_category_name": "Resource"
}
],
"day_cost": "",
"hour_cost": "",
"distance_cost": "",
"flat_rate_cost": "",
"id": 25,
"uuid": "f724f0f0-0b7c-0133-3820-34750ee4a85a",
"membership_id": 25,
"lawful_basis_type_name": "Unknown",
"sale_tax_class_name": "Default",
"purchase_tax_class_name": "Default",
"created_at": "2015-06-25T11:14:32.087Z",
"updated_at": "2015-07-13T11:14:32.095Z",
"icon": {
"iconable_id": 85,
"id": 1,
"image_file_name": "abigail.jpeg",
"url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/original/abigail.jpeg",
"thumb_url": "https://s3.amazonaws.com/current-rms-development/64a0ccd0-5fbd-012f-2201-60f847290680/icons/46/thumb/abigail.jpeg",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"iconable_type": "Member"
},
"child_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
],
"parent_members": [
{
"relatable_id": 317,
"relatable_type": "Member",
"related_id": 25,
"related_type": "Member",
"id": 1,
"relatable_name": "Bralton Industries",
"relatable_membership_type": "Organisation",
"related_name": "Chris Bralton",
"related_membership_type": "Contact"
}
]
},
"invoice_taxes": [
{
"id": 1,
"invoice_id": 15,
"tax_rate_id": 1,
"sort_order": 0,
"name": "VAT Standard",
"rate": "20.0",
"charge": "15990.0",
"amount": "3198.0",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
}
],
"id": 1
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"invoice": {
"type": "object",
"properties": {
"store_id": {
"type": "number",
"description": "The internal identifier of the Store record this invoice is related to"
},
"member_id": {
"type": "number",
"description": "The internal identifier of the Member Organisation record this invoice is related to"
},
"billing_address_id": {
"type": "number",
"description": "The internal identifier of the organisations billing address record this invoice is related to"
},
"venue_id": {
"type": "number",
"description": "The internal identifier of the Member Venue record this invoice is related to"
},
"tax_class_id": {
"type": "number",
"description": "The internal identifier of the Tax Class record this invoice is related to"
},
"subject": {
"type": "string",
"description": "The invoice subject"
},
"description": {
"type": "string",
"description": "The invoice long description"
},
"number": {
"type": "string",
"description": "(Readonly) The invoice number"
},
"invoice_type": {
"type": "number",
"description": "The invoice type (0 = Invoice, 1 = Credit Note)"
},
"invoice_type_name": {
"type": "string",
"description": "(Readonly) The invoice type name"
},
"invoiced_at": {
"type": "string",
"description": "The invoice date/time"
},
"due_at": {
"type": "string",
"description": "The invoice due date/time"
},
"status": {
"type": "number",
"description": "(Readonly) The invoice status (0 = Open, 10 = Issued, 20 = Paid, 30 = Posted, 40 = Voided)"
},
"status_name": {
"type": "string",
"description": "(Readonly) The invoice status name"
},
"reference": {
"type": "string",
"description": "The customer reference for this invoice"
},
"external_description": {
"type": "string",
"description": "The invoice long external description"
},
"owned_by": {
"type": "number",
"description": "The internal identifier of the Member User record this invoice is owned by"
},
"charge_total": {
"type": "string",
"description": "(Readonly) The invoice charge total (this total may include or exclude tax - see prices_include_tax flag below)"
},
"charge_excluding_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total excluding tax"
},
"charge_including_tax_total": {
"type": "string",
"description": "(Readonly) The invoice charge total including tax"
},
"tax_total": {
"type": "string",
"description": "(Readonly) The invoice tax total"
},
"prices_include_tax": {
"type": "boolean",
"description": "(Readonly) Flag to indicate whether the prices on this invoice include tax or not"
},
"created_at": {
"type": "string",
"description": "The date & time when the Invoice was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Invoice"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"owner": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member User record detail"
},
"member": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
},
"title": {
"type": "string",
"description": "The user's title"
},
"owner": {
"type": "boolean",
"description": "Is the user flagged as the system owner?"
},
"admin": {
"type": "boolean",
"description": "Is the user an admin?"
}
},
"description": "The user member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Organisation record detail"
},
"billing_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "(Readonly) The Billing Address object for this invoice"
},
"venue": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The member's name"
},
"description": {
"type": "string",
"description": "A longer description of the member"
},
"active": {
"type": "boolean",
"description": "Is the member record active?"
},
"bookable": {
"type": "boolean",
"description": "Is the member bookable via the Resource Planner?"
},
"location_type": {
"type": "number",
"description": "Resource location (0 = Internal, 1 = External)"
},
"locale": {
"type": "string",
"description": "The member's language locale"
},
"membership_type": {
"type": "string",
"description": "The Member record type ('User', 'Contact', 'Organisation', 'Venue')"
},
"lawful_basis_type_id": {
"type": "number",
"description": "The internal identifier of the list_value record specifying the lawful basis type"
},
"sale_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for sales to an Organisation"
},
"purchase_tax_class_id": {
"type": "number",
"description": "The tax class record identifier for purchases from an Organisation or bookable and external Contact or Venue"
},
"tag_list": {
"type": "array",
"description": "An array of tags associated with the Member record"
},
"custom_fields": {
"type": "object",
"properties": {},
"description": "A collection of custom field attributes"
},
"membership": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "(Readonly) The identifier of the membership record"
}
},
"description": "The venue member details"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The address name"
},
"street": {
"type": "string",
"description": "The street address"
},
"postcode": {
"type": "string",
"description": "The postal/zip code"
},
"city": {
"type": "string",
"description": "The address city"
},
"county": {
"type": "string",
"description": "The address county/state"
},
"country_id": {
"type": "string",
"description": "The address country record identifier"
},
"country_name": {
"type": "string",
"description": "(Readonly) The address country name"
},
"type_id": {
"type": "number",
"description": "The address type record identifier (see ListValues)"
},
"address_type_name": {
"type": "string",
"description": "(Readonly) The address type name"
},
"created_at": {
"type": "string",
"description": "The date & time when the Address was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Address"
}
},
"description": "The Primary Address object for this member"
},
"emails": {
"type": "array",
"description": "An array of Email objects for this member"
},
"phones": {
"type": "array",
"description": "An array of Phone objects for this member"
},
"links": {
"type": "array",
"description": "An array of Link objects for this member"
},
"addresses": {
"type": "array",
"description": "An array of Address objects for this member (does not include Primary Address)"
},
"service_stock_levels": {
"type": "array",
"description": "An array of Stock Level objects for this member's assigned services"
},
"day_cost": {
"type": "string",
"description": "`100.00` (number) - The daily cost of a bookable resource"
},
"hour_cost": {
"type": "string",
"description": "`15.00` (number) - The hourly cost of a bookable resource"
},
"distance_cost": {
"type": "string",
"description": "`1.00` (number) - The distance cost of a bookable resource"
},
"flat_rate_cost": {
"type": "string",
"description": "`300.00` (number) - The flat rate cost of a bookable resource"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the member record"
},
"uuid": {
"type": "string",
"description": "(Readonly) The universally unique identifier of the member record"
},
"membership_id": {
"type": "number",
"description": "(Readonly) The internal identifier of the Member record's Membership record"
},
"lawful_basis_type_name": {
"type": "string",
"description": "(Readonly) The lawful basis type name"
},
"sale_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for sales to an Organisation"
},
"purchase_tax_class_name": {
"type": "string",
"description": "(Readonly) The tax class name for purchases from an Organisation or bookable and external Contact or Venue"
},
"created_at": {
"type": "string",
"description": "(Readonly) When the Member was created"
},
"updated_at": {
"type": "string",
"description": "(Readonly) When the Member was last updated"
},
"icon": {
"type": "object",
"properties": {
"iconable_id": {
"type": "number",
"description": "The internal identifier of the record this icon is related to"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Icon record"
},
"image_file_name": {
"type": "string",
"description": "The image filename"
},
"url": {
"type": "string",
"description": "(Readonly) The full URL for the original size image"
},
"thumb_url": {
"type": "string",
"description": "The full URL for the thunbnail size image"
},
"created_at": {
"type": "string",
"description": "The date & time when the Icon was created"
},
"updated_at": {
"type": "string",
"description": "The date & time of the last update to the Icon"
},
"iconable_type": {
"type": "string",
"description": "The type of record this icon is related to"
}
},
"description": "The Icon object for this member"
},
"child_members": {
"type": "array",
"description": "An array of linked Contact (Linked Member) objects for this Organisation or Venue"
},
"parent_members": {
"type": "array",
"description": "An array of linked Organisation or Venue (Linked Member) objects for this Contact"
}
},
"required": [
"name",
"membership_type"
],
"description": "(Readonly) The Member Venue record detail"
},
"invoice_taxes": {
"type": "array",
"description": "The tax breakdown for this invoice"
},
"id": {
"type": "number",
"description": "(Readonly) The identifier of the Invoice record"
}
},
"required": [
"store_id",
"member_id",
"subject",
"invoice_type",
"invoiced_at",
"due_at"
]
}
}
}Void Invoice/Credit ¶
This method will change the status of an invoice/credit from Issued to Void.
/invoices/{id}/voidExample URI
Parameters
| Name | Example | Description |
|---|---|---|
id (number, required) | 1 |
Response 200
Headers
Content-Type: application/jsonBody
{
"invoice": {
"store_id": 1,
"member_id": 1,
"billing_address_id": 137,
"venue_id": 1,
"tax_class_id": 1,
"subject": "Aggregate b2c paradigms",
"description": "Dirty linen. In this earth people have only get through his own motive. Upon a double ejector point-blank up from which working. Prove it rapidly explored and the rare Nuttonia Vexillaria and the Professor. Can we have marked a tingle and they.",
"number": "0000000006",
"invoice_type": 0,
"invoice_type_name": "Invoice",
"invoiced_at": "2015-07-02T11:15:00.000Z",
"due_at": "2015-07-17T11:15:00.000Z",
"status": 10,
"status_name": "Issued",
"reference": "2266",
"external_description": "Copyright laws of us and that we have seen my cigar-smoke. Half an instant. Instructions to which promised to go the front of lines in the old. Eh man Or already begun to the trees near. With one of the living. Curious glassy surface of his. Leave that once again that chart.",
"owned_by": 1,
"charge_total": "15990.0",
"charge_excluding_tax_total": "15990.0",
"charge_including_tax_total": "19188.0",
"tax_total": "3198.0",
"prices_include_tax": false,
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z",
"custom_fields": {},
"owner": {
"name": "Chris Bralton",
"description": "Pictures and leaned back was strewn at one would rather more. People don't want of his own means of one hand! Unless it from our pioneer has he fallen tree but that ever stronger and a. Hid among us against the full of verdure through by my eyes.",
"active": true,
"bookable": false,
"location_type": 0,
"locale": "en-GB",
"membership_type": "Contact",
"lawful_basis_type_id": 10001,
"sale_tax_class_id": 1,
"purchase_tax_class_id": 1,
"tag_list": [
"[\"Red\", \"Blue\", \"Green\"]"
],
"custom_fields": {},
"membership": {
"id": 1,
"title": "Manager",
"owner": true,
"admin": true
},
"primary_address": {
"name": "Chris Branson",
"street": "16 The Triangle",
"postcode": "NG2 1AE",
"city": "Nottingham",
"county": "Nottinghamshire",
"country_id": "1",
"country_name": "United Kingdom",
"type_id": 3001,
"address_type_name": "Primary",
"created_at": "2015-06-29T10:00:00.000Z",
"updated_at": "2015-06-29T10:30:00.000Z"
},
"emails": [
{
"