Operation Definitions
The operation definitions include the security, endpoints, and data models used in the Portal API, and are organized in the following sections:
Companies
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /companies/{companyid}
Summary
Get the information for one company. This endpoint does not work with person tokens, as they do not have a companyid.
Request Parameter
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A single company | Company |
403 | Error Response Message: Permission denied | |
404 | Error Response Message: Company not found | |
Default | Error Response Message: Unexpected Error |
Sample Success Response Body
{
"id": "string",
"name": "string",
"is_active": true,
"active": true,
"is_smb": true,
"allow_cleanup": true,
"primary_contact": {
"name": "string",
"email": "string"
},
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"sites_count": 0,
"demo_sites_count": 0,
"sites_href": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"aliases": [
{
"name": "string",
"value": "string"
}
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"is_sales_partner": true,
"sales_partner": {
"id": "string",
"support_contact": "string"
},
"support_contact": "string",
"brands": [
"string"
],
"child_companies": [
"string"
]
}Companies - People
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /companies/{companyid}/people/{personid}/user-groups
Summary
Get the list of the person’s user groups.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
query |
| string | No |
|
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of user groups for the person | Inline |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: User group not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"name": "string",
"description": "string",
"roles": [],
"users": [],
"sites": [],
"company_id": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}GET /companies/{companyid}/people/{personid}/permissions
Summary
Get a person's permissions for selected company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response An array of company permissions for the person | permission_declaration_set |
403 | Error Response Message: Permission denied | None |
Default | Error Response Message: Permission denied | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"name": "string",
"app_code": "string",
"type": "string",
"title": "string",
"helptext": "string"
}
]
}GET /companies/{companyid}/people/{personid}/user-preferences
Summary
Get all preferences for a user in a subject company. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of company preferences | User preferences list response |
401 | Error Response Message: Not authorized | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"company_id": "string",
"site_id": "string",
"person_id": "string",
"default_app": "string",
"name": "string",
"value": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}POST /companies/{companyid}/people/{personid}/user-preferences
Summary
Add a custom user preference on the company level. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
body |
| Yes | The custom preference payload details |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Created a company user preference | user_preference |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
422 | Error Response Message: Person in company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"company_id": "string",
"site_id": "string",
"person_id": "string",
"default_app": "string",
"name": "string",
"value": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}DELETE /companies/{companyid}/people/{personid}/user-preferences/{userpreferenceid}
Summary
Delete a user preference by the specified identifier. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
path |
| string | Yes | The user preference identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. The user preference was successfully removed. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: User preference not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/people
Summary
Get the people related to a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
query |
| integer (int32) | Yes | The maximum records to return |
query |
| integer (int32) | Yes | The records to skip before returning |
query |
| string | No | A substring of names to filter on |
query |
| boolean | No | If "True," include resources where active is false |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of people | person_list |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"cognito_uuid": "string",
"sign_up_date": "string",
"active": true,
"is_confirmed": true,
"is_sign_up_token_expired": true,
"name": "string",
"email": "user@example.com",
"is_active": true,
"roles": [],
"preferred_language": "string",
"last_login": {},
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}PUT /companies/{companyid}/people/{personid}
Summary
Update a person for the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
body |
| Yes | The JSON of the person from the company |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Successful update of the person in the company | company_person |
403 | Error Response Message: Permission denied | None |
422 | Error Response Message: Not implemented yet | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"company_id": "string",
"person_id": "string",
"is_contact": true,
"is_confirmed": true,
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"is_active": true,
"receives_notifications": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}GET /companies/{companyid}/people/{personid}
Summary
Get a person of a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Information about a company person | company_person |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
422 | Error Response Message: Person in company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"company_id": "string",
"person_id": "string",
"is_contact": true,
"is_confirmed": true,
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"is_active": true,
"receives_notifications": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}DELETE /companies/{companyid}/people/{personid}
Summary
Remove a person from the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. Successful removal of the person. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
422 | Error Response Message: Person in company not found | None |
Default | Error Response Message: Unexpected Error | None |
PUT /companies/{companyid}/people/{personid}
Summary
Update a person for the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The person identifier |
body |
| Yes | The JSON of the person from the company |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Successful update of the person in the company | company_person |
403 | Error Response Message: Permission denied | None |
422 | Error Response Message: Not implemented yet | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"company_id": "string",
"person_id": "string",
"is_contact": true,
"is_confirmed": true,
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"is_active": true,
"receives_notifications": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}Data Models
NewCompanyPersonRequestBody
Field Name | Type | Description |
|---|---|---|
| string | |
| string | |
| string | |
| array | |
| string | |
| string | |
| boolean | |
| boolean |
Sample Request Body
{
"name": "string",
"email": "string",
"preferred_language": "string",
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"receives_notifications": true,
"send_invitation_email": true
}CompaniesPeopleUserPreferencesRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | |
| string | Yes | |
| string | No |
Sample Request Body
{
"name": "string",
"value": "string",
"default_app": "string"
}Companies - Site Hierarchies
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /companies/{companyid}/site-hierarchies
Summary
Get a site hierarchies list by a specified identifier.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site hierarchy identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A site hierarchies list | site_hierarchies_list_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site hierarchy not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"name": "string",
"company_id": "string",
"levels": [],
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}POST /companies/{companyid}/site-hierarchies
Summary
Create a new site hierarchy.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path | companyid | string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response Created a site hierarchy document | site_hierarchy_document |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Validation error | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"name": "string",
"company_id": "string",
"sites": [
"string"
],
"levels": [
{}
]
}PUT /companies/{companyid}/site-hierarchies/{siteHierarchyId}
Summary
Update the site hierarchy by the identifier.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site hierarchy identifier |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response Updated the site hierarchy document | site_hierarchy_document |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Validation error | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"name": "string",
"company_id": "string",
"sites": [
"string"
],
"levels": [
{}
]
}GET /companies/{companyid}/site-hierarchies/{siteHierarchyId}
Summary
Get a site hierarchy document by the specified identifier.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site hierarchy identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A site hierarchy document | site_hierarchy |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site hierarchy not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"name": "string",
"company_id": "string",
"levels": [
{}
],
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}DELETE /companies/{companyid}/site-hierarchies/{siteHierarchyId}
Summary
Delete a site hierarchy document by the specified identifier.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site hierarchy identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. The site hierarchy has been successfully removed. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site hierarchy not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/custom-fields-entities
Summary
Get the company metadata entities.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Get the company metadata entities | custom-fields-entities |
403 | Error Response Message: Permission denied | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
[
{}
]Companies - Metadata
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /companies/{companyid}/metadata
Summary
Get all metadata documents for a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of company metadata documents | company |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"name": "string",
"is_active": true,
"active": true,
"is_smb": true,
"allow_cleanup": true,
"primary_contact": {
"name": "string",
"email": "string"
},
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"sites_count": 0,
"demo_sites_count": 0,
"sites_href": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"aliases": [
{
"name": "string",
"value": "string"
}
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"is_sales_partner": true,
"sales_partner": {
"id": "string",
"support_contact": "string"
},
"support_contact": "string",
"brands": [
"string"
],
"child_companies": [
"string"
]
}POST /companies/{companyid}/metadata
Summary
Add a metadata tag document for a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The metadata payload details |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A single company | company |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"name": "string",
"is_active": true,
"active": true,
"is_smb": true,
"allow_cleanup": true,
"primary_contact": {
"name": "string",
"email": "string"
},
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"sites_count": 0,
"demo_sites_count": 0,
"sites_href": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"aliases": [
{
"name": "string",
"value": "string"
}
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"is_sales_partner": true,
"sales_partner": {
"id": "string",
"support_contact": "string"
},
"support_contact": "string",
"brands": [
"string"
],
"child_companies": [
"string"
]
}DELETE /companies/{companyid}/metadata/tags/{metadataTagId}
Summary
Delete a metadata tag from a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifer |
path |
| string | Yes | The metadata tag identifier |
Respones
Code | Description | Schema |
|---|---|---|
204 | No content. The metadata tag has been removed successfully. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
POST /companies/{companyid}/metadata/custom-fields
Summary
Add a metadata field document for a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The metadata payload details |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Created a metadata object | metadata_custom_field |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"name": "string",
"section_name": "string",
"order": 0,
"section_order": 0,
"help_text": "string",
"placeholder_text": "string",
"usage_type": "string",
"custom_validation_rules": [
{
"name": "string",
"rule_definition": "string"
}
]
}Data Models
MetadataPayloadRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | The entity identifier |
| object | Yes | |
| string | No | |
| string | No | |
| integer | No |
Sample Request Body
{
"entity_id": "string",
"value": {},
"path": "string",
"section_name": "string",
"order": 0
}MetadataCustomFieldRequestBody
Field Name | Type | Description |
|---|---|---|
| string | |
| string | |
| integer | |
| integer | |
| string | |
| string | |
| string | |
| object | |
| string | |
| string |
Sample Request Body
{
"name": "string",
"section_name": "string",
"order": 0,
"section_order": 0,
"help_text": "string",
"placeholder_text": "string",
"usage_type": "string",
"custom_validation_rules": [
{
"name": "string",
"rule_definition": "string"
}
]
}Companies - Sites
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
POST /companies/{companyid}/sites
Summary
Add a site to the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The JSON of the site being added to the company |
Respones
Code | Description | Schema |
|---|---|---|
200 | Success Response Successful linking site with the company | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/sites
Summary
Get the sites for a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
query |
| integer (int32) | Yes | The maximum records to return |
query |
| integer (int32) | Yes | The records to skip before returning |
query |
| string | No | A substring of a name to filter on |
query |
| boolean | No | If "True", include resources where active is false |
query |
| string | No | An alias name to filter on |
query |
| string | No | An alias value to filter on |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of sites | site_list |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"additionalProp1": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp2": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp3": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": [
{
"terminal_id": "string",
"terminal_entity_id": "string",
"device_uuid": "string",
"installed_version": "string",
"date": "string"
}
]
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}
]
}POST /companies/{companyid}/sites/refresh-xkm-site-data
Summary
Refresh the Enterprise Kitchen site data.
Note
This operation refreshes the site configuration data, not the cloud data.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
header |
| string | Yes |
|
header |
| string | Yes | The integrator token created previously |
body |
| Yes | The request body |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response The status of the request | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: The company or site not found | None |
Default | Error Response Message: Unexpected Error | None |
POST /companies/{companyid}/sites/subscriptions
Summary
Get the active sites subscription codes.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response The status of the request | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/sites/{siteid}
Summary
Get one company site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A single site | site_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"identifiers": {
"federal_tax": "string",
"state_province_tax": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"property1": {
"preferred_version": {},
"installed_version": {}
},
"property2": {
"preferred_version": {},
"installed_version": {}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": []
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}PUT /companies/{companyid}/sites/{siteid}
Summary
Update a site for the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
body |
| Yes | The JSON of the site being updated in the company |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response updated the site information | site_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company or site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"identifiers": {
"federal_tax": "string",
"state_province_tax": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"property1": {
"preferred_version": {},
"installed_version": {}
},
"property2": {
"preferred_version": {},
"installed_version": {}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": []
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}DELETE /companies/{companyid}/sites/{siteid}
Summary
Remove a site from the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. The successful removing of a site from the company. | None |
404 | Error Response Message: Company or site not found | None |
Default | Error Response Message: Unexpected Error | None |
POST /companies/{companyid}/get-sites
Summary
Get the sites for a company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
query |
| integer (int32) | Yes | The maximum records to return |
query |
| integer (int32) | Yes | The records to skip before returning |
query |
| string | No | A substring of the name to filter on |
query |
| boolean | No | If "True," include the resources where active is false |
query |
| string | No | An alias name to filter on |
query |
| string | No | An alias value to filter on |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of sites | site_list |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {},
"subscriptions": [],
"location": {},
"identifiers": {},
"access_code": "string",
"automatic_updates": true,
"apps": {},
"connected_devices": [],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}
]
}GET /companies/{companyid}/sites-count
Summary
Get a company’s sites count available for the user.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response The company identifier with sites count | company_sites_count |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
[
{
"company_id": "string",
"sites_count": 0,
"restricted_access": true
}
]POST /companies/{companyid}/sites/:site_id/roles
Summary
Add a new site role. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
body |
| Yes | The JSON of the new site role |
Responses
Code | Description | Schema |
|---|---|---|
201 | No content. The role was created successfully. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found or company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/sites/{siteid}/roles
Summary
Get the company site roles.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of the site roles | site_roles_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company or site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [],
"company_role_id": "string",
"site_id": "string",
"company_id": "string",
"description": "string"
}
]
}DELETE /companies/{companyid}/sites/{siteid}/roles/{siteroleid}
Summary
Remove the company site role. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The site identifier |
path |
| string | Yes | The site role identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | No content. The site role is removed. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company or site not found | None |
Default | Error Response Message: Unexpected Error | None |
Data Models
NewSiteRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | A descriptive name for the site |
| No | ||
| string | No | |
| string (email) | No | |
| string | Yes | A unique identifier for the site defined by the company |
| Yes | The location object defines the site’s address | |
| boolean | No | |
| string | Yes | |
| string | Yes | Examples: |
| string | Yes | Examples: |
| string | No |
Sample Request Body
{ "name": "string", "phone_settings": { "code": "string", "number": "string", "country": "string" }, "website": "string", "email": "user@example.com", "store_number": "string", "location": { "address_1": "string", "address_2": "string", "city": "string", "state": "string", "zip": "string", "formatted_address": "string", "country": "string" }, "automatic_updates": true, "timezone": "string", "environment": "string", "business_type": "string", "preferred_language": "string", "source_site_copy_id": "string" }
PhoneSettingsRequestBody
Field Name | Type | Description |
|---|---|---|
| string | |
| string | |
| string |
LocationRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | The first line of the site’s street address |
| string | No | The second line of the site’s street address |
| string | Yes | The city portion of the site’s address |
| string | Yes | The state, province, or region portion of the site’s address |
| string | Yes | The zip or postal code portion of the site’s address |
| string | No | |
| string | Yes | The country of the site’s address. |
RefreshKMSitesRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| array | Yes | The list of site identifiers (IDs) |
| array | Yes | The list of kitchen station IDs |
| array | Yes | The list of kitchen entity IDs |
Sample Request Body
curl --location 'https://xprtbackend.xenial.com/v1/companies/<company_id> /sites/refresh-xkm-site-data' \ --header 'authorization: Bearer <TOKEN>' \ --header 'Content-Type: application/json' \ --data '{ "site_ids": [ "5abbc2171fd8fb001ca02a19" ], "kitchen_stations_ids": [ "66f1920dcc2a1e4f1b7daba9", "66f1920dcc2a1e4f1b7dabaa", "66f1920dcc2a1e4f1b7dabab", "66f1920dcc2a1e4f1b7dabac", "66f1920dcc2a1e4f1b7dabaf", "66f1920dcc2a1e4f1b7dabb0" ], "kitchen_entity_ids": [ "58a70c994a52a807a49ea3a5", "58a70cd64a52a807a49ea3a9", "5fb58ccaa4c48e002cdd384f", "eb7c05b9b0ae3c72efcfb50c", "58a70caf4a52a807a49ea3a7", "5907bb57c34d43b25110f0b9" ] }'
SiteUpdateRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| integer (string) | Yes | |
| string | Yes | |
| string | No | |
| string | No | |
| string (email) | No | |
| string | No | |
| No | ||
| No | ||
| string | No | |
| boolean | No | |
| No | ||
| string | Yes | |
| string | No | |
| [string] | No | |
| boolean | No |
Sample Request Body
{ "id": 0, "name": "string", "phone_number": "string", "website": "string", "email": "user@example.com", "store_number": "string", "company": { "id": "string", "name": "string", "is_smb": true, "is_active": true, "created_at": "string", "created_by": "string", "updated_at": "string", "updated_by": "string", "subscriptions": [ {} ], "brands": [ "string" ] }, "location": { "address_1": "string", "address_2": "string", "city": "string", "state": "string", "zip": "string", "formatted_address": "string", "country": "string" }, "access_code": "string", "automatic_updates": true, "apps": { "property1": { "preferred_version": {} }, "property2": { "preferred_version": {} } }, "timezone": "string", "source_site_replace_id": "string", "copy_entities": [ "string" ], "revert": true }
CompanyRequestBody
Field Name | Type | Description |
|---|---|---|
| string | |
| string | |
| boolean | |
| boolean | |
| string | |
| string | |
| string | |
| string | |
| ||
| [string] |
AppsRequestBody
Field Name | Type | Description |
|---|---|---|
|
AdditionalPropertiesRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| Yes |
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | |
| string | Yes | |
| string | Yes |
SiteRoleRequestBody
Field Name | Type | Description |
|---|---|---|
| string | The site role unique identifier |
| string | The site role name |
| boolean | The flag that indicates if the site role is active |
| string | The date and time the site role was created |
| string | The user who created the site role |
| string | The date and time the site role was updated |
| string | The user who updated the site role |
| The list of permissions assigned to the site role | |
| string | The company role identifier |
| string | The site identifier |
| string | The company identifier |
| string | The site role description |
Sample Request Body
{ "id": "string", "name": "string", "is_active": true, "created_at": "string", "created_by": "string", "updated_at": "string", "updated_by": "string", "permissions": [ { "app_code": "string", "name": "string", "type": "string", "value": "string", "created_at": "string", "created_by": "string", "updated_at": "string", "updated_by": "string" } ], "company_role_id": "string", "site_id": "string", "company_id": "string", "description": "string" }
PermissionsRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | The application code |
| string | Yes | The permission name |
| string | No | The permission type |
| string | Yes | The permission value |
| string | No | The date and time the permission was created |
| string | No | The user who created the permission |
| string | No | The date and time the permission was updated |
| string | No | The user who updated the permission |
Companies - Roles
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /companies/{companyid}/roles
Summary
Get the company's roles.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of the companies’ roles | companies_roles_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [
{
"app_code": "string",
"name": "string",
"type": "string",
"value": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}
]
}POST /companies/{companyid}/roles
Summary
Add a new role to the company.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The JSON of the new role for the company |
Responses
Code | Description | Schema |
|---|---|---|
201 | No content. The role was created successfully. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/roles/{roleid}
Summary
Get the company role by the roleid.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The role identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A company role | company_role |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company role not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [
{
"app_code": "string",
"name": "string",
"type": "string",
"value": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}PUT /companies/{companyid}/roles/{roleid}
Summary
Update a company role.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The role identifier |
body |
| Yes | The JSON of the new data of the company role |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. The role was updated successfully. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/permissions
Summary
Get company permissions. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response All company permissions | permission_declaration_set |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"name": "string",
"app_code": "string",
"type": "string",
"title": "string",
"helptext": "string"
}
]
}POST /companies/{companyid}/permissions
Summary
Update company roles with permissions. Only the existing access token is required to call this endpoint.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The JSON of the permission information |
POST /companies/{companyid}/usage-data/roles
Summary
Get the company role(s) usage data.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
body |
| Yes | The JSON of the company roles to deactivate |
Responses
Code | Description | Schema |
|---|---|---|
201 | The role(s) usage data was successfully created | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Roles/company not found | None |
Default | Error Response Message: Unexpected Error | None |
PUT /companies/{companyid}/status/roles/{status}
Summary
Update the company role(s) status.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The role status |
body |
| Yes | The JSON of the company role identifiers |
Responses
Code | Description | Schema |
|---|---|---|
201 | The role(s) deactivation successful | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Roles/ company not found | None |
Default | Error Response Message: Unexpected Error | None |
GET /companies/{companyid}/user_roles/{status}
Summary
Get the active/inactive companies’ roles.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
path |
| string | Yes | The role status |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of active/inactive companies’ roles | company_roles_responses |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [
{
"app_code": "string",
"name": "string",
"type": "string",
"value": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}
]
}GET /companies/{companyid}/default-roles
Summary
Get a company's default role names.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The company identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response An array of the company default roles names | company_default_role_names |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Company not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
[ "string" ]
Data Models
CompanyPermissionRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | Yes | The application code |
| string | Yes | The company permission name |
| [string] | Yes | The list of company permission roles |
Sample Request Body
{
"app_code": "string",
"name": "string",
"roles": [
"string"
]
}CompanyRolesRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| [string] | Yes | The list of roles information |
Sample Request Body
{
"roles": [
"string"
]
}RoleRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| string | No | The object identifier |
| string | Yes | The role name |
| boolean | No | The flag that indicates if the role is active |
| string | No | The date and time the role was created |
| string | No | The user who created the role |
| string | No | The date and time the role was updated |
| string | No | The user who updated the role |
| Yes | The list of permission information |
Sample Request Body
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [
{
"app_code": "string",
"name": "string",
"type": "string",
"value": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}Sites
Security
jwt-bearer-token
apiKey | API Key |
|---|---|
Name | Authorization |
In | header |
Endpoints
GET /sites
Summary
Get the list of sites.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
query |
| integer (int32) | Yes | The maximum records to return |
query |
| integer (int32) | Yes | The records to skip before returning |
query |
| string | No | A substring of name to filter on |
query |
| boolean | No | If "True," include resources where active is false |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of sites | site_list |
403 | Error Response Message: Permission denied | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {},
"subscriptions": [],
"location": {},
"identifiers": {},
"access_code": "string",
"automatic_updates": true,
"apps": {},
"connected_devices": [],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}
]
}POST /sites
Summary
Add a new site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
body |
| Yes | The JSON of the site being created |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response Site added | site_response |
403 | Error Response Message: Permission denied | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"additionalProp1": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp2": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp3": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": [
{
"terminal_id": "string",
"terminal_entity_id": "string",
"device_uuid": "string",
"installed_version": "string",
"date": "string"
}
]
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}DELETE /sites/bulk
Summary
Create, update, or delete many sites per one request.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
body |
| array [object] | No | The sites' documents to create, update, or delete |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response The details for each bulk operation: create, update, or delete | bulk_execution_response |
403 | Error Response Message: Permission denied | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"notCreated": {
"total": 0,
"items": [
{}
]
},
"notUpdated": {
"total": 0,
"items": [
{}
]
},
"notDeleted": {
"total": 0,
"items": [
{}
]
}
}PUT /sites/{siteid}
Summary
Edit a site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
body |
| Yes | The JSON of the site being edited |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response Site edited | site_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"additionalProp1": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp2": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp3": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": [
{
"terminal_id": "string",
"terminal_entity_id": "string",
"device_uuid": "string",
"installed_version": "string",
"date": "string"
}
]
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}GET /sites/{siteid}
Summary
Get one site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A single site | site_response |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{
"product": "string",
"count": 0,
"name": "string",
"external_data": {},
"is_active": true,
"active": true
}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"additionalProp1": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp2": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
},
"additionalProp3": {
"preferred_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
},
"installed_version": {
"version": "string",
"uri": "string",
"end_of_life": "string"
}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": [
{
"terminal_id": "string",
"terminal_entity_id": "string",
"device_uuid": "string",
"installed_version": "string",
"date": "string"
}
]
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}DELETE /sites/{siteid}
Summary
Deactivate a site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. Successful deactivation, | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
POST /sites/{siteid}/metadata
Summary
Add metadata for a site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
body |
| Yes | The metadata payload details |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A single site | site_response |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": 0,
"active": true,
"name": "string",
"phone_settings": {
"code": "string",
"number": "string",
"country": "string"
},
"website": "string",
"email": "user@example.com",
"store_number": "string",
"company": {
"id": "string",
"name": "string",
"is_smb": true,
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"subscriptions": [
{}
],
"brands": [
"string"
]
},
"subscriptions": [
"string"
],
"location": {
"address_1": "string",
"address_2": "string",
"city": "string",
"state": "string",
"zip": "string",
"formatted_address": "string",
"country": "string"
},
"identifiers": {
"federal_tax": "string",
"state_province_tax": "string"
},
"access_code": "string",
"automatic_updates": true,
"apps": {
"property1": {
"preferred_version": {},
"installed_version": {}
},
"property2": {
"preferred_version": {},
"installed_version": {}
}
},
"connected_devices": [
{
"app_code": "string",
"devices": []
}
],
"timezone": "string",
"is_demo": true,
"is_active": true,
"edm_sync": true
}GET /sites/{siteid}/roles
Summary
Get available roles for a site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of roles for a single site | site_roles |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"name": "string",
"is_active": true,
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string",
"permissions": [
{
"app_code": "string",
"name": "string",
"type": "string",
"value": "string",
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}
]
}GET /sites/{siteid}/people
Summary
Get the people related with a site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
query |
| integer (int32) | Yes | The maximum records to return |
query |
| integer (int32) | Yes | The records to skip before returning |
query |
| string | No | A substring of name to filter on |
query |
| boolean | No | If "True," include resources where active is false |
query |
| boolean | No | If "True," include permissions for the person/people |
query |
| boolean | No | If "True," include site_people assigned to sites manually, not through the user groups |
Responses
Code | Description | Schema |
|---|---|---|
200 | Success Response A list of site people | site_people |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"total": 0,
"items": [
{
"id": "string",
"name": "string",
"email": "string",
"pos_id": 0,
"pin": 0,
"pin_updated_at": "string",
"force_pin_updated": true,
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}
]
}POST /sites/{siteid}/people
Summary
Link a person to the site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
body |
| Yes | The JSON of the person identifier being linked to the site |
Responses
Code | Description | Schema |
|---|---|---|
201 | Success Response Successful linking of a site with a person | site_person |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
Default | Error Response Message: Unexpected Error | None |
Sample Success Response Body
{
"id": "string",
"name": "string",
"email": "string",
"pos_id": 0,
"pin": 0,
"pin_updated_at": "string",
"force_pin_updated": true,
"roles": [
{
"role_id": "string",
"role_name": "string"
}
],
"created_at": "string",
"created_by": "string",
"updated_at": "string",
"updated_by": "string"
}DELETE /sites/{siteid}/people/{personid}
Summary
Remove a person from the site.
Request Parameters
In | Field Name | Type | Required | Description |
|---|---|---|---|---|
path |
| string | Yes | The site identifier |
path |
| string | Yes | The person identifier |
Responses
Code | Description | Schema |
|---|---|---|
204 | No content. Successful removing of the person from the site. | None |
403 | Error Response Message: Permission denied | None |
404 | Error Response Message: Site not found | None |
422 | Error Response Message: Person in site not found | None |
Default | Error Response Message: Unexpected Error | None |
Data Models
SiteUpdateRequestBody
Field Name | Type | Required | Description |
|---|---|---|---|
| integer (string) | Yes | The site identifier |
| string | Yes | The site name |
| string | No | The site phone number |
| string | No | The site website |
| string (email) | No | The site email |
| string | No | The site store number |
| No | The site company information | |
| No | The site location information | |
| string | No | The site access code |
| boolean | No | The flag that indicates whether automatic updates is set |
| No | The site's applications information | |
| string | Yes | The site time zone |
| string | No | |
| [string] | No | |
| boolean | No |
NewSitePersonRequestBody
Field Name | Type | Description |
|---|---|---|
| string | The person's identifier |
Sample Request Body
{
"person_id": "string"
}