Connect your tools to 404Fault — automatically
Instead of manually copying prompts and projects, your tools like n8n, Claude, Make, and ChatGPT can pull content from 404Fault directly — no human in the loop.
Your tools connect to 404Fault and fetch what they need
Real examples — what can you do?
This isn't just for coders — anyone using automation tools can benefit.
Weekly prompt digest
Every Monday, your n8n workflow fetches the top 10 new prompts from 404Fault and sends them to your team Slack channel automatically.
AI that knows 404Fault
Connect Claude or ChatGPT to the API so it can search 404Fault's glossary and answer questions about AI terms in Arabic.
Sync projects to Notion
Every time a new project is published on 404Fault, Zapier automatically adds it to your Notion database with all its tags and description.
AI rules inside your editor
A VS Code extension fetches the latest AI rules from 404Fault and injects them as context every time you open a new project.
How to get started — 3 steps only
You don't need to be a programmer. If you use n8n or Make, you can connect to the API in minutes.
Create your API token
Go to the Developer page, click "New Token", give it a name, choose what it can access (e.g. prompts, projects), and copy the token — it is shown only once.
Add it to your tool
In n8n, add an HTTP Request node. Set the URL to https://404fault.com/api/agent/context and add the header: Authorization: Bearer ft_YOUR_TOKEN. That is it.
Use the data in your automation
The API returns JSON — structured data your tool can read, filter, format, and act on. Send it to Slack, feed it to an AI model, add it to Notion — it is your choice.
Ready? Get your API token now
Free — no credit card needed
Authentication
All agent endpoints require a Bearer API token in the Authorization header. Create tokens at /developer.
Authorization: Bearer ft_<your-64-hex-chars>
Token format
ft_ + 64 hex characters (67 chars total)Storage
SHA-256 hash only — raw token never stored, never recoverableNote: The /api/tokens endpoint (token management) uses Firebase Auth ID tokens, not API tokens.
Rate Limits
Windows are UTC-based. Exceeding limits returns 429 Too Many Requests. Use exponential backoff before retrying.
Scopes
| Scope | Used By |
|---|---|
profile:read | context?type=profile |
projects:read | context?type=projects |
projects:create | submit, /api/agent/projects |
prompts:read | context?type=prompts |
rules:read | context?type=rules |
glossary:read | context?type=glossary |
context:read | /api/agent/context |
search:read | /api/agent/search |
feedback:write | /api/agent/feedback |
Endpoints
/api/agentnoneHealth check — returns API status and available endpoints.
Response
{ "status": "ready", "phase": "D", "endpoints": [...], "docs": "/developers/docs" }/api/agent/contextcontext:readReturns structured, AI-ready context. Suitable for building prompts, RAG pipelines, or agent memory.
Query params
type = projects | prompts | rules | profile | glossary | full (default: full) limit = 1..50 (default: 20)
Response
{
"type": "full",
"version": "1.0",
"generatedAt": "2026-06-23T12:00:00.000Z",
"projects": [{ "id": "...", "title": "...", "description": "...", "aiToolsUsed": [...], "tags": [...] }],
"prompts": [{ "id": "...", "title": "...", "promptText": "...", "category": "...", "tags": [...] }],
"rules": [{ "id": "...", "title": "...", "ruleContent": "...", "tool": "...", "tags": [...] }],
"glossary": [{ "id": "...", "slug": "...", "term": "RAG", "termAr": "الاسترجاع المعزز", "definition": "...", "definitionAr": "..." }],
"profile": { "uid": "...", "displayName": "...", "bio": "...", "role": "member" },
"meta": { "counts": { "projects": 20, "prompts": 12, "rules": 8, "glossary": 50, "profile": 1 } }
}/api/agent/searchsearch:readKeyword search across public projects, prompts, or rules.
Query params
q = search query (required) type = projects | prompts | rules (default: projects) limit = 1..20 (default: 10)
Response
{ "query": "automation", "type": "projects", "results": [{ "id": "...", "title": "...", "description": "...", "tags": [...] }], "count": 3 }/api/agent/submitprojects:createGeneral agent submission endpoint. Currently supports type=project.
Request body
| Field | Type | Req | Description |
|---|---|---|---|
| type | string | ✓ | Must be "project" |
| title | string | ✓ | Project title (max 200 chars) |
| description | string | ✓ | What the project does (max 5000 chars) |
| problemSolved | string | ✓ | Problem it solves (max 2000 chars) |
| aiToolsUsed | string[] | ✓ | AI tools used (e.g. ["Claude", "n8n"]) |
| tags | string[] | ✓ | Searchable tags |
| githubUrl | string | — | GitHub repository URL |
| liveDemoUrl | string | — | Live demo URL |
| visibility | string | — | public | private | unlisted (default: public) |
| lessonsLearned | string | — | Key lessons (max 2000 chars) |
| buildJourney | string | — | Build process notes (max 2000 chars) |
Response
{ "type": "project", "projectId": "abc123", "url": "/projects/abc123" }/api/agent/feedbackfeedback:writeSubmit agent feedback on a project, prompt, or rule.
Request body
| Field | Type | Req | Description |
|---|---|---|---|
| targetType | string | ✓ | "project" | "prompt" | "rule" |
| targetId | string | ✓ | Firestore document ID of the target |
| rating | number | — | 1 to 5 (integer) |
| comment | string | — | Text feedback (max 1000 chars) |
Response
{ "feedbackId": "xyz789" }/api/tokensFirebase Auth JWTList API tokens for the authenticated user.
Response
{ "tokens": [{ "id": "...", "name": "...", "prefix": "ft_...", "scopes": [...], "status": "active", "usageCount": 5 }] }/api/tokensFirebase Auth JWTCreate a new API token. Raw token returned ONCE — copy immediately.
Request body
| Field | Type | Req | Description |
|---|---|---|---|
| name | string | ✓ | Human-readable token name |
| scopes | string[] | ✓ | Array of scope strings |
Response
{ "id": "...", "name": "...", "prefix": "ft_...", "scopes": [...], "rawToken": "ft_...", "warning": "Copy this token now." }/api/tokens/[tokenId]Firebase Auth JWTRevoke an API token immediately.
Response
{ "revoked": true }curl Examples
Health check (no auth)
curl https://404fault.com/api/agent
Fetch full context
curl -H "Authorization: Bearer ft_<token>" \ "https://404fault.com/api/agent/context?type=full&limit=20"
Search projects
curl -H "Authorization: Bearer ft_<token>" \ "https://404fault.com/api/agent/search?q=automation&type=projects"
Submit a project
curl -X POST https://404fault.com/api/agent/submit \
-H "Authorization: Bearer ft_<token>" \
-H "Content-Type: application/json" \
-d '{
"type": "project",
"title": "My AI Workflow",
"description": "Automates customer support using Claude and n8n.",
"problemSolved": "Reduces response time from hours to seconds.",
"aiToolsUsed": ["Claude", "n8n"],
"tags": ["automation", "support"]
}'Error Codes
| Code | Status | Description |
|---|---|---|
| 400 | Bad Request | Missing or invalid parameters |
| 401 | Unauthorized | Missing, invalid, or revoked Bearer token |
| 403 | Forbidden | Token lacks required scope |
| 413 | Payload Too Large | Request body exceeds 10 KB limit |
| 429 | Too Many Requests | Hourly (50) or daily (200) rate limit exceeded |
| 500 | Internal Error | Server error — retry with exponential backoff |
404Fault API · Phase D · v1.0
Manage tokens →