Overview
Tebex Headless API allows integration of your store directly into your own frontend or in-game.
Last updated
Was this helpful?
Tebex Headless API allows integration of your store directly into your own frontend or in-game.
Last updated
Was this helpful?
The Headless API works with your existing packages, coupons, sales & creator codes.
If you haven't already done so, we recommend having a read of our quick start guide before beginning integration.
You can query the Headless API to retrieve your packages/categories, build a basket for a user, and direct them to checkout - all from within your own frontend implementation (be that a website or in-game).
The Headless API can be used with Tebex.js for a fully embedded checkout experience without the user ever leaving your own website.
Below is the expected flow your application should follow when utilizing the Headless API. For a list of all endpoints, please see the Endpoints page.
You can retrieve your store's listings in JSON format and display them however you wish:
In order to purchase items, a basket must be created for the customer. Create a basket and allow the customer to login with their username or other OAuth login mechanism (e.g Steam or FiveM).
You can add or remove packages programmatically to the created basket via the API as needed when the user interacts with your application.
Once all packages and quantities are selected, apply any relevant coupons, gift cards, or creator codes with these endpoints.
When the user is ready to checkout, fetch the basket and direct the user to the links.checkout
URL.
To get started with your own integration of the Headless API you're able to use our example integration built upon Nuxt.js, Vue & Typescript. Take a look at the tebexio/Headless-Template GitHub repo to begin.
The following websites are built using the Headless API - hosted via our customers own infrastructure, using frontend frameworks such as Vue or React.
Gets all categories from a webstore. This does not include package information. To include package information, add ?includePackages=1
to the URL.
/accounts/{token}/categories
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
Gets all categories from a webstore including packages.
/accounts/{token}/categories?includePackages=1
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
Gets information about a category and returns the packages in that category.
/accounts/{token}/categories/{categoryId}
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The ID of the category to fetch.
127244343
Gets information about a category and returns the packages in that category.
/accounts/{token}/categories/{categoryId}?includePackages=1
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The ID of the category to fetch.
127244343
Gets a package from a webstore by ID.
/accounts/{token}/packages/{packageId}
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The package's ID.
1272441812
Creates a new basket for use during checkout.
/accounts/{token}/baskets
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
A URL the user can return to when checkout is completed.
https://example.tebex.io/thank-you
A URL the user can return to when cancelling checkout.
https://tebex.io/
True if the user should automatically be redirected to the relevant complete/cancel URL
true
Custom data you wish to associate with the basket. This data will be included with webhook responses and GET requests associated with the Basket.
{"foo":"bar"}
Fetches a basket's auth URL.
/accounts/{token}/baskets/{basketIdent}/auth?returnUrl={returnUrl}
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
The URL you would like to redirect the user to after successful basket authentication.
https://example.tebex.io/
Add a package with the given ID to the basket.
/baskets/{basketIdent}/packages
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
6276316
1
Remove the given package ID from the basket.
/baskets/{basketIdent}/packages/remove
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
6276316
Applies a creator code to a basket.
/accounts/{token}/baskets/{basketIdent}/creator-codes
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
Academy10
Applies a creator code to a basket.
/accounts/{token}/baskets/{basketIdent}/creator-codes/remove
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
No body
Applies a creator code to a basket.
/accounts/{token}/baskets/{basketIdent}/giftcards
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
0127 0244 7210 1111
Removes a gift card from the basket.
/accounts/{token}/baskets/{basketIdent}/giftcards/remove
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
0127 0244 7210 1111
No body
Applies a creator code to a basket.
/accounts/{token}/baskets/{basketIdent}/coupons
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
Academy10
Removes a coupon code from a basket
/accounts/{token}/baskets/{basketIdent}/coupons/remove
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c
No body
Gets a basket associated with the provided identifier.
/accounts/{token}/baskets/{basketIdent}
The webstore identifier.
t66x-7cd928b1e9312709e6810edac6dc1fd1eefc57cb
The basket identifier.
c00244-d2ac2e77418a55b25292a6bc7a719ad9c529ba2c