Toolblip API Reference
Overview
The Toolblip API is a free REST API for browsing developer tools and managing user accounts. All endpoints return JSON. No API key is required for public read endpoints — register an account to obtain a Bearer token for authenticated routes.
Base URL (active)
https://toolblip-api-production.up.railway.appClean domain (SSL pending)
https://api.toolblip.com| Method | Endpoint | Auth | Description |
|---|---|---|---|
| POST | /api/auth/register | public | Create account |
| POST | /api/auth/login | public | Sign in |
| POST | /api/auth/logout | 🔒 auth | Revoke session |
| GET | /api/auth/user | 🔒 auth | Current user |
| GET | /api/tools | public | List all tools |
| GET | /api/tools/:slug | public | Get a tool |
Authentication
Protected endpoints require a Bearer token obtained from /api/auth/register or /api/auth/login. Pass it in the Authorization header on every authenticated request.
Tools
All tools endpoints are public — no authentication required.
/api/tools→ 200Returns a paginated list of all tools in the registry.
Response
{
"tools": {
"tools": [
{
"id": 1,
"slug": "claude-code",
"name": "Claude Code",
"description": "AI coding assistant by Anthropic",
"category": "AI",
"is_pro": false,
"emoji": "🤖",
"created_at": "2026-01-01T00:00:00Z"
},
{
"id": 2,
"slug": "cursor",
"name": "Cursor",
"description": "AI-first code editor built around pair programming",
"category": "AI",
"is_pro": true,
"emoji": "💻",
"created_at": "2026-01-15T00:00:00Z"
}
]
}
}curl
curl -X GET https://toolblip-api-production.up.railway.app/api/tools/api/tools/{slug}→ 200Fetch a single tool by its slug. Returns 404 if not found.
Response
{
"tool": {
"id": 1,
"slug": "claude-code",
"name": "Claude Code",
"description": "AI coding assistant by Anthropic",
"category": "AI",
"is_pro": false,
"emoji": "🤖",
"created_at": "2026-01-01T00:00:00Z"
}
}curl
curl -X GET https://toolblip-api-production.up.railway.app/api/tools/claude-codeAuth
/api/auth/register→ 201Create a new user account. Returns the user object and a Bearer token.
Request body
{
"name": "Harun",
"email": "[email protected]",
"password": "secret123",
"password_confirmation": "secret123"
}Response
{
"user": {
"id": 1,
"name": "Harun",
"email": "[email protected]",
"is_pro": false
},
"token": "tb_live_xxxxxxxxxxxxxxxx"
}curl
curl -X POST https://toolblip-api-production.up.railway.app/api/auth/register \
-H "Content-Type: application/json" \
-d '{"name":"Harun","email":"[email protected]","password":"secret123","password_confirmation":"secret123"}'/api/auth/login→ 200Sign in with email and password. Returns the user object and a Bearer token.
Request body
{
"email": "[email protected]",
"password": "secret123"
}Response
{
"user": {
"id": 1,
"name": "Harun",
"email": "[email protected]",
"is_pro": false
},
"token": "tb_live_xxxxxxxxxxxxxxxx"
}curl
curl -X POST https://toolblip-api-production.up.railway.app/api/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"[email protected]","password":"secret123"}'/api/auth/logout🔒 auth→ 200Revoke the current Bearer token, ending the session.
Headers
Authorization: Bearer tb_live_xxxxxxxxxxxxxxxxResponse
{
"message": "Logged out successfully"
}curl
curl -X POST https://toolblip-api-production.up.railway.app/api/auth/logout \
-H "Authorization: Bearer tb_live_xxxxxxxxxxxxxxxx"/api/auth/user🔒 auth→ 200Retrieve the currently authenticated user.
Headers
Authorization: Bearer tb_live_xxxxxxxxxxxxxxxxResponse
{
"user": {
"id": 1,
"name": "Harun",
"email": "[email protected]",
"is_pro": false
}
}curl
curl -X GET https://toolblip-api-production.up.railway.app/api/auth/user \
-H "Authorization: Bearer tb_live_xxxxxxxxxxxxxxxx"Error Responses
All errors return a JSON body with a message field, and optionally an errors object for validation failures.
{
"message": "The given data was invalid.",
"errors": {
"email": ["The email field is required."],
"password": ["The password field is required."]
}
}Rate Limits
60 requests / minute
Authenticated endpoints. Public read endpoints have more generous limits. When limited, the API returns 429 Too Many Requests — back off and retry.

