Welcome to the Cassie Clip API
Explore our endpoints, see live examples, and integrate with ease.
Free Plan
Basic usage for everyone
- Requests: 100 / day
- Cooldown: 1 per 10s
- Endpoints: Public only
Premium Plan
Higher limits & access
- Requests: 10,000 / day
- Cooldown: 1 per second
- Endpoints: All (incl. premium)
🔒 Authentication
Your access is secured with unique API keys.
To use our API endpoints, you must include an API key with your requests.
To get your key, join the Cassie Clip Discord server and use the /api-key
command.
Then, add your API key in the request header like this:
Authorization: Your_API_Key
How to get your API Key:
- Join the Cassie Clip Discord server.
- Use the command
/api-key
in bot commands channel. - Cassie will send your API key directly to you via a private (ephemeral) message.
- Use this key in your API requests to authenticate.
GET
/v1/vbucks
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/vbucks', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/vbucks', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/vbucks" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/vbucks', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"total": 1,
"missions": [
{
"vbuck_amount": 40,
"mission": "Repair The Shelter",
"difficulty": "116",
"theater": "Twine Peaks"
}
]
}
}
GET
/v1/friends/:accountId/list
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/friends/:accountId/list', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/friends/:accountId/list', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/friends/:accountId/list" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/friends/:accountId/list', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"displayName": "CassieClip",
"NumberFriends": 240,
"data": [
"CassieClip1"
"CassieClip2"
]
}
GET
/v1/{accountId}/online
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/{accountId}/online', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/{accountId}/online', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/{accountId}/online" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/{accountId}/online', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"displayName": "CassieClip",
"account_id": "21313121dsa",
"online": True
}
}
POST
/v1/stw-lookup&:accountId
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.post('https://api.cassieclip.xyz/v1/stw-lookup&:accountId', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/stw-lookup&:accountId', {
method: 'POST',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X POST "https://api.cassieclip.xyz/v1/stw-lookup&:accountId" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.post('https://api.cassieclip.xyz/v1/stw-lookup&:accountId', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"AccountInfo": {
"displayName": "CassieClip",
"account_id": "2323sd",
"PowerLevel": 130
},
"DailyQuests": {
"quests": [...]
},
"AccountResource": {
...
},
"Achievements": {
...
}
}
}
GET
/v1/season
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/season', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/season', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/season" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/season', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"br": {
"seasonNumber": 35,
"seasonBegin": "2025-04-25T13:00:00Z",
"seasonEnd": "2025-06-13T13:00:00Z"
},
"stw": {
"stwWeeklyStoreEnd": "2025-05-29T00:00:00.000Z",
"stwEventStoreEnd": "2025-06-19T00:00:00.000Z"
}
}
}
GET
/v1/catalog
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/catalog', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/catalog', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/catalog" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/catalog', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
...
}
}
GET
/v1/stats
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/stats', headers=headers, json={"accountId": ""})
print(res.json())
fetch('https://api.cassieclip.xyz/v1/stats', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
},
params: {
accountId: ""
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/stats" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json" \
-d '{"accountId": ""}'
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/stats', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
},
params: {
accountId: ""
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"displayName": "CassieClip",
"account_id": "asdas2312",
"ranked_br": {
"rank": "Unreal"
...
},
"ranked_zb": {
"rank": "Unreal"
...
}
"reload_br": {
"rank": "Unreal"
...
},
"reload_zb": {
"rank": "Unreal"
...
},
"og_ranked_br": {
"rank": "Unreal"
...
},
"og_ranked_zb": {
"rank": "Unreal"
...
}
}
}
GET
/v1/survivors-legendary
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/survivors-legendary', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/survivors-legendary', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/survivors-legendary" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/survivors-legendary', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"data": {
"total": 1,
"survivors": [
{
"name": "Legendary survivor",
"mission": "Ride the Lightning",
"difficulty": "160 - 4 Players",
"theater": "Twine Peaks",
"quantity": 1
}
]
}
}
GET
/v1/llamas
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/llamas', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/llamas', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/llamas" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/llamas', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"total": 1,
"llamas": [
{
"name": "Legendary survivor",
"mission": "Ride the Lightning",
"difficulty": "160 - 4 Players",
"theater": "Twine Peaks",
"quantity": 1
}
],
}
}
GET
/v1/llama-rotation
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/llama-rotation', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/llama-rotation', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/llama-rotation" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/llama-rotation', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"totalLlamas": 1,
"data": [
{
"offerId": "4D64CBE3618D41FBB5CAD0E472F4610A",
"title": "Upgrade Llama",
"description": "The description was to long to show here",
"finalPrice": 50,
"currencySubType": "AccountResource:currency_xrayllama",
"displayAssetPath": "The assets path was to long to show here",
"itemGrants": [
{
"templateId": "CardPack:cardpack_bronze",
"quantity": 1
}
]
}
...
]
}
GET
/v1/service/{ServerId}/status
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/service/{ServerId}/status', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/service/{ServerId}/status', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/service/{ServerId}/status" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/service/{ServerId}/status', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"serviceInstanceId": "fortnite",
"status": "UP",
"message": "Fortnite is online",
"maintenanceUri": null,
"overrideCatalogIds": [
""
],
"allowedActions": [
"PLAY",
"DOWNLOAD"
],
"banned": false,
"launcherInfoDTO": {
"appName": "Fortnite",
"catalogItemId": "",
"namespace": "fn"
}
}
}
GET
/v1/weekly-supercharger
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/weekly-supercharger', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/weekly-supercharger', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/weekly-supercharger" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/weekly-supercharger', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"data": {
"Supercharger": "Weapon Supercharger",
"ImageUrl": "https://cdn.cassieclip.xyz/weekly/weapong_charge.png"
}
}
GET
/v1/alerts160
import requests
headers = {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
res = requests.get('https://api.cassieclip.xyz/v1/alerts160', headers=headers)
print(res.json())
fetch('https://api.cassieclip.xyz/v1/alerts160', {
method: 'GET',
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(res => res.json())
.then(data => console.log(data))
curl -X GET "https://api.cassieclip.xyz/v1/alerts160" \
-H "Authorization: Your API Key" \
-H "Content-Type: application/json"
const axios = require('axios');
axios.get('https://api.cassieclip.xyz/v1/alerts160', {
headers: {
'Authorization': 'Your API Key',
'Content-Type': 'application/json'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
{
"statusCode": 200,
"totalMissions": 5,
"data": [
{
"mission": "Retrieve the Data",
"zone": "Autumn Foothills",
"tileIndex": 203,
"modifiers": "",
"alert_rewards": [
"38x Storm Shard",
"290x FIRE-UP!",
"132x Tickets"
],
"permanent_rewards": [
"5x Storm Shard",
"1x Gold"
]
},
{
"mission": "Fight Category 4 Storm",
"zone": "Tropical",
"tileIndex": 202,
"modifiers": "",
"alert_rewards": [
"242,000x Schem XP",
"290x FIRE-UP!",
"132x Tickets"
],
"permanent_rewards": [
"5x Storm Shard",
"1x Gold"
]
}
]
}