Skip to main content
GET
/
balance
Read & Query
curl --request GET \
  --url https://tokens.shakesco.com/balance \
  --header 'Authorization: Bearer <token>'
{ "balance": "50000000000000000000" }

Documentation Index

Fetch the complete documentation index at: https://docs.shakesco.com/llms.txt

Use this file to discover all available pages before exploring further.

For the complete documentation index, see llms.txt. All read endpoints are GET requests to https://tokens.shakesco.com. Pass email as a query parameter to identify the customer.
Token amounts are returned in wei (18 decimals). Divide by 10^18 to get the human-readable value.

GET /balance?email=…

Available (spendable) token balance for a customer, excluding staked and vested amounts.
const res = await fetch(
  "https://tokens.shakesco.com/balance?email=customer@example.com",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { balance } = await res.json();
// e.g. "50000000000000000000" → 50 tokens
{ "balance": "50000000000000000000" }

GET /user-info?email=…

Full snapshot of a customer’s token state in a single call.
{
  "available_balance": "50000000000000000000",
  "each_token_value": "10000000000000000000",
  "each_token_value_in_business": "9000000000000000000",
  "total_staked": "100000000000000000000",
  "total_vested": "0",
  "total_earned": "200000000000000000000",
  "total_spent": "50000000000000000000",
  "tier": 3,
  "voting_power": "5"
}
Tier values: 0 = None, 3 = Bronze, 2 = Silver, 1 = Gold.

GET /total-earned?email=…

Cumulative tokens earned by the customer (lifetime).
const res = await fetch(
  "https://tokens.shakesco.com/total-earned?email=customer@example.com",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { total_earned } = await res.json();
{ "total_earned": "200000000000000000000" }

GET /total-spent?email=…

Cumulative tokens redeemed (spent) by the customer.
const res = await fetch(
  "https://tokens.shakesco.com/total-spent?email=customer@example.com",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
{ "total_spent": "50000000000000000000" }

GET /has-claimed-event?email=…&event_name=…

Check whether a customer has already claimed a specific event. Useful before calling /claim-tokens.
const res = await fetch(
  "https://tokens.shakesco.com/has-claimed-event?email=customer@example.com&event_name=signup",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { has_claimed } = await res.json();
{ "has_claimed": true }

GET /event-allocation?event_name=…

Total tokens allocated to an event (across all claims so far).
const res = await fetch(
  "https://tokens.shakesco.com/event-allocation?event_name=purchase",
  { headers: { Authorization: `Bearer ${API_KEY}` } }
);
const { total_allocation } = await res.json();
{ "total_allocation": "15000000000000000000" }

GET /last-activity?email=…

Unix timestamp of the customer’s last token activity. Used to determine token expiry.
{
  "last_activity": "1715000000",
  "last_activity_iso": "2026-05-06T10:00:00.000Z"
}

GET /is-expired?email=…

Check if a customer’s tokens have passed the inactivity expiry threshold.
{ "is_expired": false }