Some bots on the Studio Marketplace are marked as Invite-only. This means users can’t access them freely—they need a subscription from the bot’s creator.
How access works
- Bot type set by author
- When submitting a bot, the author chooses whether it’s Public or Invite-only.
- Creating a subscription
- Once the bot is published as Invite-only, the author can create subscriptions for specific users.
- User access
- As soon as a user has a valid subscription, they can:
- ✅ Run the bot
- ✅ Backtest the bot
- ✅ Modify/see the code
- As soon as a user has a valid subscription, they can:
Managing bot subscriptions via API
Right now, subscriptions can be managed through the API.
Coming soon:
- Command Line (CLI) Management
- User Interface (UI) Management
As a bot creator, you can give users access to your Invite-only bots by creating subscriptions through simple HTTP requests.
We’ll use a tool called curl to send these requests.
What is curl?
- curl is a command-line tool used to send requests to web servers.
- Works on Linux, macOS, and Windows (via Git Bash, PowerShell, or WSL).
- With curl, you can send GET requests (fetch data) and POST requests (create/update data), attach headers, and send JSON payloads.
👉 Check if you have it installed: curl –version
👉 Download here: https://curl.se/
What You’ll Need
1. TradeLocker Access Token
Run this command (replace placeholders with your details):
curl --location 'https://<SUB_DOMAIN>.tradelocker.com/backend-api/auth/jwt/token' \
--header 'Content-Type: application/json' \
--data-raw '{
"email": "<EMAIL>",
"password": "<PASSWORD>",
"server": "<SERVER>"
}'
- <SUB_DOMAIN> → either live, bsa, demo or bsb
- <EMAIL> and <PASSWORD> → your TradeLocker login credentials
- <SERVER> → the server name from your login credentials
The response will include an access_token. You’ll need it in every request.
2. Buyer’s email (buyerEmail)
The email the buyer uses to log in to TradeLocker. Ask them for it directly.
3. Bot ID (botId)
Use the command below to list all your submitted bots and find a botId.
curl -X 'GET' \
'https://api.tradelocker.com/studio/marketplace/seller/bots' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>'
Copy the botId for the bot you want to give access to. The chosen bot must be published.
Managing subscriptions via HTTP
Once you have the access_token
,buyerEmail
andbotId
, you can create and manage subscriptions.
1. Create a subscription (no expiry)
curl -X 'POST' \
'https://api.tradelocker.com/studio/marketplace/seller/subscription' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"botId": "<botId>",
"buyerId": "<buyerEmail>"
}'
2. Create a subscription (with expiry)
curl -X 'POST' \
'https://api.tradelocker.com/studio/marketplace/seller/subscription' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"botId": "<botId>",
"buyerId": "<buyerEmail>",
"expiresOnTs": "2026-01-01T00:00:00.000Z"
}'
3. List all subscriptions for your bots
curl -X 'GET' \
'https://api.tradelocker.com/studio/marketplace/seller/subscriptions' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>'
Keep your Access Token safe. Treat it like a password.