Docs   »   Studio   »   How to give users access to invite-only bots
published-date Published: August 28, 2025
update-date Last Update: August 29, 2025

How to give users access to invite-only bots

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

  1. Bot type set by author
    • When submitting a bot, the author chooses whether it’s Public or Invite-only.
  2. Creating a subscription
    • Once the bot is published as Invite-only, the author can create subscriptions for specific users.
  3. User access
    • As soon as a user has a valid subscription, they can:
      • ✅ Run the bot
      • ✅ Backtest the bot
      • ✅ Modify/see the code

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,buyerEmailandbotId, 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.

Bold moves. Bend reality.