Documentación API

REST API reference for integrating ITFast tools into your applications, scripts, and AI agents.

Base URL

https://itfast.eu/api/v1

Authentication

X-Client-Id: itf_...
X-Client-Secret: sk_live_...

Create API keys in your dashboard.

Endpoints

GET/api/v1/tools

List all available tools

GET/api/v1/tools/{toolId}

Tool detail with parameter schema

POST/api/v1/execute/{toolId}

Execute a tool

GET/api/v1/credits

Check your remaining credits

GET/api/v1/usage

Execution history

POST /api/v1/execute/{toolId}

Execute any tool. Input format depends on the tool type.

Request — Text Tools

{
  "input": "Write a professional email declining a meeting",
  "preferences": {
    "tone": "formal",
    "outputLength": "detailed",
    "outputFormat": "bullets",
    "customInstructions": "Keep it under 200 words"
  }
}

Request — URL Tools

{
  "input": "https://example.com/article"
}

Request — File Tools

{
  "file": "JVBERi0xLjQK...",
  "fileName": "report.pdf"
}

// Or use plain text instead of file upload:
{
  "input": "Paste your document text here..."
}

File uploads use base64 encoding. Supported: PDF, DOCX, TXT, CSV, MD, RTF. Max 75MB.

Response

{
  "success": true,
  "output": "The AI-generated result...",
  "usage": {
    "tokensIn": 1234,
    "tokensOut": 567,
    "totalTokens": 1801,
    "creditsCharged": 1,
    "creditsRemaining": 49
  },
  "meta": {
    "toolId": "email-writer",
    "toolName": "Email Writer",
    "durationMs": 3200,
    "model": "gpt-4.1-mini"
  }
}

Preferences (optional)

tone

formal, casual, technical, friendly

outputLength

short, medium, detailed

outputFormat

paragraphs, bullets, numbered, table

customInstructions

Free text (max 500 chars)

GET /api/v1/credits

{
  "subscriptionCredits": 45,
  "purchasedCredits": 10,
  "totalAvailable": 55,
  "totalEarned": 100,
  "totalSpent": 45
}

GET /api/v1/tools

{
  "tools": [
    {
      "id": "pdf",
      "name": "PDF Analyzer",
      "description": "Upload a PDF to extract summary, key points, and action items",
      "category": "CONVERT",
      "credits": 1,
      "inputType": "file",
      "placeholder": "Upload a PDF file..."
    },
    ...
  ],
  "pagination": {
    "page": 1,
    "limit": 50,
    "total": 196,
    "totalPages": 4
  }
}

Filter by category: ?category=CONVERT — Paginate: ?page=2&limit=25

GET /api/v1/tools/{toolId}

Returns tool detail including a JSON Schema for the input parameters.

{
  "id": "pdf",
  "name": "PDF Analyzer",
  "description": "...",
  "category": "CONVERT",
  "credits": 1,
  "inputType": "file",
  "parameters": {
    "type": "object",
    "required": ["input"],
    "properties": {
      "input": { "type": "string", "description": "..." },
      "file": { "type": "string", "description": "Base64-encoded file" },
      "fileName": { "type": "string", "description": "Original filename" },
      "preferences": { ... }
    }
  }
}

GET /api/v1/usage

{
  "executions": [
    {
      "id": 42,
      "toolSlug": "pdf",
      "status": "completed",
      "durationMs": 3200,
      "tokensIn": 1234,
      "tokensOut": 567,
      "creditsCharged": 1,
      "costUsd": 0.0014,
      "createdAt": "2026-02-11T10:30:00Z"
    }
  ],
  "pagination": { "page": 1, "limit": 20, "total": 42, "totalPages": 3 }
}

Filter: ?tool=pdf — Paginate: ?page=2&limit=50

Error Responses

All errors return a consistent JSON format.

{
  "error": {
    "code": "INSUFFICIENT_CREDITS",
    "message": "Not enough credits to execute this tool"
  }
}
400BAD_REQUEST
Invalid JSON body or missing fields
400INVALID_INPUT
Missing or invalid input
400FILE_TOO_LARGE
File exceeds 75MB limit
400UNSUPPORTED_FILE_TYPE
Unsupported file type
401UNAUTHORIZED
Missing or invalid API key
402INSUFFICIENT_CREDITS
Not enough credits
403FORBIDDEN
IP not in allowlist
403KEY_REVOKED
API key revoked
404TOOL_NOT_FOUND
Tool ID not found
422URL_EXTRACTION_FAILED
URL content extraction failed
429RATE_LIMITED
Too many requests
502AI_ERROR
AI processing failed
504AI_TIMEOUT
AI processing timed out

Rate Limits

Execute endpoints30 req/min
Read endpoints120 req/min

Per API key. Exceeding returns 429 with Retry-After header.

Credits

1 credit= 25,000 tokens
Minimum charge1 credit

Subscription credits are deducted first, then purchased credits.

Quick Start

1

Create an API key

Dashboard → API Keys

2

Browse tools

GET /api/v1/tools or

3

Execute a tool

curl -X POST https://itfast.eu/api/v1/execute/quote \
  -H "X-Client-Id: YOUR_CLIENT_ID" \
  -H "X-Client-Secret: YOUR_CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"input": "3 hours web dev at 85/hr"}'
4

Check balance

GET /api/v1/credits

Back to Market
itfast.eu REST API • v1.0