The HospoIQ API is currently in beta and may change. Please send feedback to
Please get in touch if you wish to connect to our API, describing the purpose of your application and the data you wish to access.
The server is built on Identity Server. Please see the terminology documentation for terms and other documentation that may be useful.
The API supports the OData protocol in a read-only manner. This allows a standard set of URLs to be applied to each endpoint for paging, filtering and sorting. Due to resource limitations, not all fields will be filterable or sortable. These will be documented in each specific endpoint.
The OData metadata endpoint can be found at /api/$metadata.
For more details see the OData entity documentation.
Further tools and documentation on OData can be found at odata.org.
The API provides the ability to create new users who wish to connect their POS data and hospoIQ.
The request body must consist of the follow parameters:
This will return all account details including a unique download link to install the hospoIQ gateway.
Alternatively, if the POS provider is cloud-based, then the response will also return a URL to the POS provider. Navigating to this URL will present an authorization screen to allow hospoIQ to access POS data via the cloud.
POST:https://api.hospoiq.com/account/registerBody:{ "firstName": "John", "lastName": "Doe", "email": "johnDoe@email.com", "createEmail": "true", "region": "Auckland", "posType": "MenuMate", "password": "P@ssWord", "siteName": "Johns Business", }Result:{ "user": { "firstName": "John", "lastName": "Doe", "email": "johndoe@hospoiq.com", "suppliedEmail": "johndoe@email.com" }, "sites": [ { "siteID": 123456, "siteName": "Johns Business", "gateways": [ { "gatewayID": 0, "gatewayCode": "XYZ123", "posName": "MenuMate", "posStatus": "Not downloaded", "posConnectUrl": "https://cloudpos.com/authorize?redirect_uri=https%3a%2f%2fapp.hospoiq.com%2fAuthorize", "installerUrl": "https://app.hospoiq.com/download?code=XYZ123", "installerUrlExpiry": "2019-10-24T02:19:18+00:00", "lastRetrospective": "2019-10-16T18:00:00+00:00", "lastRefresh": "2019-10-16T02:19:18+00:00", } ] } ] }
To access resources for your recently created account, you need to request an access token.
The request body must be JSON encoded and consist of the following parameters:
This will return an access token and refresh token.
POST:https://api.hospoiq.com/tokenJSON parameters:username = johndoe@hospoiq.com password = P@ssWordResult:{ "accessToken": "ey07e4b5...4498", "expiresIn" : 3600, "tokenType" : "Bearer" }
The API provides the ability to get Users and all the sites that they own. This request must be authenticated with an access token.
GET:https://api.hospoiq.com/accountResult:{ "user": { "firstName": "John", "lastName": "Doe", "email": "johndoe@hospoiq.com", "suppliedEmail": "johndoe@email.com" }, "sites": [ { "siteID": 123456, "siteName": "Johns Business", "gateways": [ { "gatewayID": 0, "gatewayCode": "XYZ123", "posName": "MenuMate", "posStatus": "Not downloaded", "posConnectUrl": "https://cloudpos.com/authorize?redirect_uri=https%3a%2f%2fapp.hospoiq.com%2fAuthorize", "installerUrl": "https://app.hospoiq.com/download?code=XYZ123", "installerUrlExpiry": "2019-10-16T02:19:18+00:00" "lastRetrospective": "2019-10-16T18:00:00+00:00", "lastRefresh": "2019-10-16T02:19:18+00:00", } ] }, { "siteID": 234567, "siteName": "Johns Business 2", "gateways": [ { "gatewayID": 0, "gatewayCode": "XYZ234", "posName": "MenuMate", "posStatus": "Running", "posConnectUrl": "https://cloudpos.com/authorize?redirect_uri=https%3a%2f%2fapp.hospoiq.com%2fAuthorize", "installerUrl": "https://app.hospoiq.com/download?code=XYZ234", "installerUrlExpiry": "2019-10-16T02:19:18+00:00" "lastRetrospective": "2019-10-16T18:00:00+00:00", "lastRefresh": "2019-10-16T02:19:18+00:00", }, { "gatewayID": 1, "gatewayCode": "XYZ235", "posName": "MenuMate", "posStatus": "Running", "posConnectUrl": "https://cloudpos.com/authorize?redirect_uri=https%3a%2f%2fapp.hospoiq.com%2fAuthorize", "installerUrl": "https://app.hospoiq.com/download?code=XYZ235", "installerUrlExpiry": "2019-10-16T02:19:18+00:00" "lastRetrospective": "2019-10-16T18:00:00+00:00", "lastRefresh": "2019-10-16T02:19:18+00:00", } ] } ] }