Welcome to the Toast integration community! Here's how to get started building your Toast integration.
Subscribe to updates on this page. This adds you to the distribution list for release notes and status updates.
To familiarize yourself with Toast APIs, download our collection of example API requests.
To get an authentication token, plug in your credentials and the sandbox hostname. You get your credentials and the sandbox hostname from the Toast integrations team when you start to build your integration.
For more information, see Integration partnership process.
| Note | 
| This section does not apply to the gift card API or the loyalty API. | 
Use these instructions to use the authentication API to get your first authentication token.
Your integration should request a new authentication token during the last minute the original token is valid (less than 60 seconds before the original token expires).
For more information, see Refreshing authentication tokens.
| Note | 
| This section does not apply to the gift card API or the loyalty API. | 
If you use a partner API client
Contact the Toast integrations team with your URL for the partners webhook. Review the webhook documentation.
Use this webhook to receive real-time notifications when:
- 
                                    Your integration is added or removed. 
- 
                                    Restaurants update the location and group ID fields for your integration. 
The webhook should be your primary mechanism to understand who is connected to your integration, with the partners API as a backup.
If you receive a notification that a restaurant has removed your integration, stop all API requests for that restaurant location.
In addition, poll the /restaurants endpoint of the
                                    partners API
                                    to retrieve a list of all restaurants connected to your integration.
                                    Programmatically poll this endpoint a few times per day using the
                                    lastModified query parameter to see if any new restaurants
                                    have connected to your integration since you last evaluated the
                                    list.
                           
The /connectedRestaurants endpoint can also be used
                                    to retrieve your connected restaurants and provides a paginated
                                    response. /connectedRestaurants includes the same JSON
                                    objects as the /restaurants endpoint with a few additional
                                    fields for navigating different response pages. For more information on
                                    using the /connectedRestaurants endpoint, see How to make a request to /connectedRestaurants or
                                    visit the Get
                                       connected restaurants API specification. For more information on
                                    pagination, see Paginating response data.
                           
If you use a restaurant management group API client
Use the restaurant GUID and restaurant group GUID to retrieve from the /groups endpoint a list of all restaurants in your restaurant management group.
You get the restaurant GUID and the restaurant group GUID from the Toast integrations team when you begin to build your integration.
If you add restaurants to your management group in the future, the endpoint will include the new restaurant locations in the list.
You can get detailed information about a specific restaurant using
                                    the /v1/restaurants/{restaurantGUID} endpoint of the
                                    restaurants API. For more information, see Getting information about a specific restaurant. When you
                                    use the /v1/restaurants/{restaurantGUID} endpoint, set the
                                    includeArchived query parameter to true to
                                    ensure that the endpoint will return information about the restaurant
                                    even if it has been made inactive (archived). You can determine whether
                                    a restaurant has been archived by checking the archived
                                    value in the General object of the restaurant information
                                    you receive from the endpoint response. If you use the
                                    /v1/restaurants/{restaurantGUID} endpoint and receive an
                                    HTTP 404 Not Found response, set the includeArchived query
                                    parameter to true and make the request again to determine
                                    whether the restaurant exists and has been archived. 
                           
| Note | 
| This section does not apply to the gift card API or the loyalty API. | 
To avoid receiving rate limit errors when you call Toast APIs, throttle your requests so they stay within Toast API rate limits.
To resolve any issues in your integration, you must know when errors occur and have information to help determine the causes of those errors.
If you cannot successfully submit data to the Toast platform or retrieve data from it, your integration may not function as intended, which will frustrate users of your integration.
It is critical that you have a strong error management and resolution process.
If you receive the same error when you make the same API request multiple times, you should stop making that API request.
Your integration should have an error threshold, after which you stop submitting the same API call repeatedly and instead raise an alert in your own system to investigate the error.
After your integration goes live, you need to be equipped to handle planned and unplanned downtimes of the Toast platform.
Use the API downtime guidelines to create your downtime procedures before you need them.
If there is an issue with the integration, instruct mutual customers to contact your support team rather than the Toast support team. Because you build and maintain your integration with Toast, we ensure a smooth customer experience when mutual customers contact your team with questions and issues about your integration.
Your documentation should also instruct restaurants about how to do any necessary onboarding steps within your own administrative tools and within Toast.