Loading...
Loading...
Integrate text processing, developer tools, calculators, unit conversion, and QR code generation into your apps with a simple REST API.
All API requests require a Bearer token in the Authorization header. API keys are available on Pro and Business plans.
Authorization: Bearer YOUR_API_KEY
Get your API key: Sign in at brisktool.com/account and navigate to the API Keys section.
Base URL: https://api.brisktool.com
| Plan | Monthly Calls | Max Payload |
|---|---|---|
| Pro ($12/mo) | 200 calls | 100 KB |
| Business ($24/mo) | 1,000 calls | 100 KB |
| Enterprise | Custom | Custom |
Limits reset on the 1st of each month. Exceeding your limit returns 429 Too Many Requests. Contact us for higher limits.
Jump to endpoint
/v1/text/case-convertConvert text between upper, lower, title, sentence, camel, snake, and kebab case.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The text to convert |
| to | string | No | Target case: upper, lower, title, sentence, camel, snake, kebab (default: lower) |
curl -X POST https://api.brisktool.com/v1/text/case-convert \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "hello world example", "to": "title" }'{
"result": "Hello World Example",
"from": 19,
"to": "title"
}/v1/text/word-countCount words, characters, sentences, paragraphs, and estimate reading time.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | The text to analyze |
curl -X POST https://api.brisktool.com/v1/text/word-count \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "Hello world. This is a test." }'{
"words": 6,
"characters": 28,
"characters_no_spaces": 23,
"sentences": 2,
"paragraphs": 1,
"reading_time_minutes": 1
}/v1/text/slugGenerate URL-friendly slugs from any text. Handles Unicode and special characters.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | Text to convert to a slug |
curl -X POST https://api.brisktool.com/v1/text/slug \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "Hello World! This is a Test" }'{
"slug": "hello-world-this-is-a-test"
}/v1/dev/json-formatFormat and validate JSON strings with configurable indentation.
| Name | Type | Required | Description |
|---|---|---|---|
| json | string | Yes | JSON string to format |
| indent | number | No | Indentation spaces (default: 2) |
curl -X POST https://api.brisktool.com/v1/dev/json-format \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "json": "{\"name\":\"test\",\"value\":123}", "indent": 2 }'{
"formatted": "{\n \"name\": \"test\",\n \"value\": 123\n}",
"valid": true
}/v1/dev/base64Encode text to Base64 or decode Base64 back to text.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | Text to encode, or Base64 string to decode |
| action | string | No | "encode" (default) or "decode" |
curl -X POST https://api.brisktool.com/v1/dev/base64 \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "Hello World", "action": "encode" }'{
"result": "SGVsbG8gV29ybGQ="
}/v1/dev/hashGenerate MD5, SHA-1, SHA-256, or SHA-512 hashes from text.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | Text to hash |
| algorithm | string | No | md5, sha1, sha256 (default), sha512 |
curl -X POST https://api.brisktool.com/v1/dev/hash \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "Hello World", "algorithm": "sha256" }'{
"hash": "a591a6d40bf420...",
"algorithm": "SHA-256"
}/v1/dev/uuidGenerate one or more v4 UUIDs.
| Name | Type | Required | Description |
|---|---|---|---|
| count | number | No | Number of UUIDs to generate (default: 1, max: 100) |
curl -X POST https://api.brisktool.com/v1/dev/uuid \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "count": 3 }'{
"uuids": [
"550e8400-e29b-41d4-...",
"6ba7b810-9dad-11d1-...",
"f47ac10b-58cc-4372-..."
]
}/v1/dev/url-encodeEncode or decode URL components.
| Name | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | Text to encode/decode |
| action | string | No | "encode" (default) or "decode" |
curl -X POST https://api.brisktool.com/v1/dev/url-encode \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "hello world & foo=bar", "action": "encode" }'{
"result": "hello%20world%20%26%20foo%3Dbar"
}/v1/calc/percentageCalculate percentages with three modes: "of" (X% of Y), "is" (X is what % of Y), "change" (% change from X to Y).
| Name | Type | Required | Description |
|---|---|---|---|
| mode | string | Yes | "of", "is", or "change" |
| a | number | Yes | First number |
| b | number | Yes | Second number |
curl -X POST https://api.brisktool.com/v1/calc/percentage \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "mode": "of", "a": 15, "b": 200 }'{
"result": 30,
"description": "15% of 200"
}/v1/convert/unitsConvert between units of length, weight, temperature, volume, area, speed, and data.
| Name | Type | Required | Description |
|---|---|---|---|
| value | number | Yes | The value to convert |
| from | string | Yes | Source unit (e.g. mi, kg, c, l) |
| to | string | Yes | Target unit |
| category | string | No | length, weight, temperature, volume, area, speed, data (auto-detected if omitted) |
curl -X POST https://api.brisktool.com/v1/convert/units \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "value": 5, "from": "mi", "to": "km", "category": "length" }'{
"result": 8.0467,
"from": "mi",
"to": "km",
"value": 5,
"category": "length"
}/v1/qr/generateGenerate a QR code as a Base64-encoded PNG image.
| Name | Type | Required | Description |
|---|---|---|---|
| data | string | Yes | Text or URL to encode in the QR code |
| size | number | No | Image size in pixels (default: 256, max: 1024) |
curl -X POST https://api.brisktool.com/v1/qr/generate \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "data": "https://brisktool.com", "size": 256 }'{
"image": "data:image/png;base64,iVBOR...",
"size": 256,
"data": "https://brisktool.com"
}const response = await fetch("https://api.brisktool.com/v1/text/case-convert", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({ text: "hello world", to: "title" }),
});
const data = await response.json();
console.log(data.result); // "Hello World"import requests
response = requests.post(
"https://api.brisktool.com/v1/text/case-convert",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"text": "hello world", "to": "title"},
)
data = response.json()
print(data["result"]) # "Hello World"Use the "Get Contents of URL" action in Apple Shortcuts to call any BriskTool API endpoint. See our pre-built shortcuts for ready-to-use examples.
| Code | Meaning |
|---|---|
| 400 | Bad Request — missing or invalid parameters |
| 401 | Unauthorized — missing or malformed API key |
| 403 | Forbidden — invalid or inactive API key |
| 429 | Too Many Requests — monthly rate limit exceeded |
| 500 | Internal Server Error — something went wrong on our end |
| 503 | Service Unavailable — API temporarily unavailable |
Get an API key in minutes. 11 endpoints ready to use today.