Quick Start
Discover Plume API and how to integrate it into your service.
Overview
This API offers a wide range of fun and easy-to-use features, designed for your Discord bots or similar applications.
API Versioning
| Version | Base URL | Release Date | Deprecation Date |
|---|---|---|---|
| v1 | https://plume.sodiumlabs.xyz/api | 08/03/2025 | Not deprecated |
Error Handling
You may encounter errors if you send an invalid or malformed request. Errors always use non-2XX status codes and typically contain a JSON object with a message field explaining the issue.
Common codes you may encounter are:
| Code | Reason |
|---|---|
| 400 | Something with your request was invalid. The reason should be explained in the API docs or in the message field. |
| 422 | Validation of your query parameters failed. Required parameters are missing or invalid. Check the errors field in the response, which is an array of objects like { message: string }. |
| 429 | You are being rate-limited. Wait before querying the API again. |
| 5XX | The endpoint or the API is down. Try again later. |
Rate Limits
Plume API has a rate-limiting system to prevent abuse. Every response from the API includes three special headers so you know how close you are to the limit.
| Header | Meaning |
|---|---|
X-Ratelimit-Limit | The maximum number of requests you can make in the window. |
X-Ratelimit-Remaining | The number of requests remaining until the next reset. |
X-Ratelimit-Reset | Seconds until the Remaining count resets. |
Please avoid making unnecessary requests to our API, as they can degrade service for other users.
How to use the API
Here is a basic example to fetch a random quote from the API:
import { PlumeAPI } from "@sodiumlabs/plume-api";
// or: const { PlumeAPI } = require("@sodiumlabs/plume-api");
const plumeAPI = new PlumeAPI();
// fetch a random quote:
const data = await plumeAPI.quote();
console.log(`Quote by ${data.author}: ${data.quote}`);import requests
response = requests.get(f"https://plume.sodiumlabs.xyz/api/quote?locale=en")
if response.status_code != 200:
raise Exception("Invalid response")
data = response.json()
print(f"Quote by {data['author']}: {data['quote']}")That's it! If you need more help, join the Discord.