<aside> ❗ Note: This documentation is a work in progress, it only contains a subset of the endpoints and functionalities of the API. Please contact [email protected] with your API integration requirements and a member of our team will co-ordinate the required support for your integration. The Endpoints database also includes an endpoint template for further documentation.

</aside>

WristCoin Cashless POS API Reference

Introduction

The reference is your key to a basic understanding of the WristCoin API. This reference is not comprehensive and is a work in progress. There are only a limited number of endpoints discussed here as we work on making out API documentation more complete. To discuss your specific integration needs and to request support, please contact [email protected].

<aside> ❗ You need a token to interact with the WristCoin API. You can obtain a token after you create an account on WristCoin. It is highly recommended that you create a dedicated user account for API access with a very strong password. The API access account should have administration rights on your dashboard.

</aside>

<aside> ❗ In the future API access conditions and pricing plans may apply for some integrations. Currently the API is open for usage

</aside>

Conventions

The base URL to send all API requests for the live system is https://live.mywristcoin.com/api/v1.

The base URL to send all API requests for the demo system is https://dev-demo.mywristcoin.com/api/v1.

HTTPS is required for all API requests.

The WristCoin API follows RESTful conventions, with most operations performed via GETPOSTPATCH, and DELETE requests on page and database resources. Request and response bodies are encoded as JSON.

Authorization Header

Authorization to the API is done via bearer token. When the token is returned from a successful call to the authenticate endpoint, use it as a credential for subsequent requests by specify it as a Bearer token in the Authorization parameter in the request header.

<aside> 💡 The value of the Authorization should be Bearer followed by a space and then the token

</aside>

Your Back Office Dashboard Identifier

Sometimes referred to in the API objects as an event_id , this is the unique identifier of your WristCoin backoffice dashboard provided to you by WristCoin. It is needed in most API requests as a path parameter.

URL Encoding and This Documentation

Throughout this reference, URL examples and query parameters are shown for readability and include unescaped space characters as well as other invalid URL characters. For example, the query parameter for sort can be name:desc,item_id:asc to indicate that the results should be sorted descending by name and then ascending by item_id contains the colon (:) and comma (,) characters, both not allowed in URLs. It is assumed that when those are sent proper URL encoding is applied, which in this case would be: sort=name%3Adesc%2Citem_id%3Aasc

JSON CONVENTIONS

Request Limits

To ensure a consistent developer experience for all API users, the WristCoin API is rate limited

Rate Limits

Rate-limited requests will return a "too many requests, please wait" error message (HTTP response status 429). The rate limit for incoming requests per endpoint is an average of five requests per second.

<aside> ❗ Rate limits may change

In the future, we plan to adjust rate limits to balance for demand and reliability. We may also introduce distinct rate limits for workspaces in different pricing plans.

</aside>

Status Codes

HTTP response codes are used to indicate general classes of success and error.

Success Code

HTTP Status Quote Description
200 Successfully processed request.

Error Codes

Error responses contain more detail about the error in the response body, in the "error_code" and "error_message"properties.

HTTP Status Quote error_code error_message Comments
400 0 Various Error message depends on endpoint, however this message will describe why the request was rejected as a ‘bad request’
401/403 0 A valid authorization was not present Usually means the bearer token was not included in the request

Endpoints

<aside> 💡 For the demo dashboard, where you can do test API operations before your integration goes live with production data, you can use the same URL format but replace live.mywristcoin.com with dev-demo.mywristcoin.com

</aside>

Endpoints

Objects

Menu Item

Staff

Vendor

Inventory Transaction Report

Sales Report

Topups Report

Inventory Item

Inventory Count Report