    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Maya© PDF Form Filler - API Documentation</title>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
        <link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/themes/prism.min.css" rel="stylesheet">
        <style>
            :root {
                --maya-primary: #667eea;
                --maya-secondary: #764ba2;
            }
            
            body {
                font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            }
            
            .navbar {
                background: linear-gradient(135deg, var(--maya-primary), var(--maya-secondary)) !important;
            }
            
            .endpoint-card {
                border-left: 4px solid var(--maya-primary);
                margin-bottom: 2rem;
            }
            
            .method-badge {
                font-weight: bold;
                padding: 0.25rem 0.5rem;
                border-radius: 0.25rem;
                font-size: 0.75rem;
            }
            
            .method-post { background-color: #28a745; color: white; }
            .method-get { background-color: #007bff; color: white; }
            
            pre[class*="language-"] {
                border-radius: 0.5rem;
                border: 1px solid #dee2e6;
            }
        </style>
    </head>
    <body>
        <nav class="navbar navbar-dark">
            <div class="container">
                <span class="navbar-brand">📄 Maya© PDF Form Filler - API Documentation</span>
                <a href="../" class="btn btn-light btn-sm">← Back to Web Interface</a>
            </div>
        </nav>

        <div class="container py-5">
            <!-- Introduction -->
            <div class="row">
                <div class="col-12">
                    <h1 class="mb-4">API Documentation</h1>
                    <div class="alert alert-info">
                        <h5><i class="fas fa-info-circle"></i> Revolutionary PDF Processing API</h5>
                        <p class="mb-0">Fill any PDF form without PDFtk dependencies. Pure PHP implementation with guaranteed results.</p>
                    </div>
                </div>
            </div>

            <!-- Authentication -->
            <div class="row">
                <div class="col-12">
                    <h2>🔐 Authentication</h2>
                    <p>All API requests require authentication using Bearer tokens:</p>
                    <pre><code class="language-bash">curl -X POST https://api.mayapdffiller.com/pdf/fill \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"</code></pre>
                </div>
            </div>

            <!-- Fill PDF Endpoint -->
            <div class="row mt-5">
                <div class="col-12">
                    <div class="card endpoint-card">
                        <div class="card-header">
                            <h3>
                                <span class="method-badge method-post">POST</span>
                                /api/pdf/fill
                            </h3>
                            <p class="mb-0">Fill PDF form with provided data</p>
                        </div>
                        <div class="card-body">
                            <h5>Request Body:</h5>
                            <pre><code class="language-json">{
  "template_pdf": "base64_encoded_pdf_content",
  "data": {
    "customer_name": "Maya Inc",
    "invoice_date": "01/15/2024",
    "invoice_number": "INV-2024-001",
    "items": [
      {
        "description": "WebPrint Pro License",
        "quantity": 1,
        "price": 30.00
      }
    ],
    "total_amount": "$30.00"
  },
  "format": "json",
  "options": {
    "method": "merge_if_possible_else_generate",
    "return_base64": true
  }
}</code></pre>

                            <h5 class="mt-4">Response:</h5>
                            <pre><code class="language-json">{
  "success": true,
  "filled_pdf": "base64_encoded_completed_pdf",
  "method_used": "direct_merge",
  "processing_time": "0.8s",
  "file_size": 245760,
  "timestamp": "2024-01-15T10:30:00Z"
}</code></pre>

                            <h5 class="mt-4">Parameters:</h5>
                            <table class="table">
                                <thead>
                                    <tr>
                                        <th>Parameter</th>
                                        <th>Type</th>
                                        <th>Required</th>
                                        <th>Description</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <tr>
                                        <td><code>template_pdf</code></td>
                                        <td>string</td>
                                        <td>Yes</td>
                                        <td>Base64 encoded PDF template</td>
                                    </tr>
                                    <tr>
                                        <td><code>data</code></td>
                                        <td>object</td>
                                        <td>Yes</td>
                                        <td>Form data to fill</td>
                                    </tr>
                                    <tr>
                                        <td><code>format</code></td>
                                        <td>string</td>
                                        <td>No</td>
                                        <td>Data format: json, xml, csv, dbf, excel, form-data</td>
                                    </tr>
                                    <tr>
                                        <td><code>options</code></td>
                                        <td>object</td>
                                        <td>No</td>
                                        <td>Processing options</td>
                                    </tr>
                                </tbody>
                            </table>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Analyze PDF Endpoint -->
            <div class="row">
                <div class="col-12">
                    <div class="card endpoint-card">
                        <div class="card-header">
                            <h3>
                                <span class="method-badge method-post">POST</span>
                                /api/pdf/analyze
                            </h3>
                            <p class="mb-0">Extract form fields from PDF template</p>
                        </div>
                        <div class="card-body">
                            <h5>Request Body:</h5>
                            <pre><code class="language-json">{
  "template_pdf": "base64_encoded_pdf_content",
  "extract_options": {
    "include_positions": true,
    "include_types": true,
    "export_formats": ["json", "xml", "csv"]
  }
}</code></pre>

                            <h5 class="mt-4">Response:</h5>
                            <pre><code class="language-json">{
  "success": true,
  "form_fields": [
    {
      "name": "customer_name",
      "type": "text",
      "required": true,
      "max_length": 100,
      "position": {"x": 120, "y": 200, "width": 200, "height": 20}
    },
    {
      "name": "invoice_date",
      "type": "date",
      "format": "MM/DD/YYYY",
      "position": {"x": 350, "y": 200, "width": 100, "height": 20}
    }
  ],
  "total_fields": 15,
  "processing_time": "0.3s"
}</code></pre>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Usage Stats Endpoint -->
            <div class="row">
                <div class="col-12">
                    <div class="card endpoint-card">
                        <div class="card-header">
                            <h3>
                                <span class="method-badge method-get">GET</span>
                                /api/usage
                            </h3>
                            <p class="mb-0">Get current usage statistics</p>
                        </div>
                        <div class="card-body">
                            <h5>Response:</h5>
                            <pre><code class="language-json">{
  "success": true,
  "usage": {
    "current_month": {
      "pdfs_processed": 245,
      "remaining": 755,
      "limit": 1000
    },
    "subscription": {
      "plan": "starter",
      "status": "active",
      "next_billing": "2024-02-15"
    },
    "rate_limit": {
      "requests_this_hour": 15,
      "hourly_limit": 1000
    }
  }
}</code></pre>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Error Handling -->
            <div class="row mt-5">
                <div class="col-12">
                    <h2>⚠️ Error Handling</h2>
                    <p>All errors return a consistent format:</p>
                    <pre><code class="language-json">{
  "success": false,
  "error": "Invalid API key",
  "error_code": "AUTH_INVALID",
  "timestamp": "2024-01-15T10:30:00Z"
}</code></pre>

                    <h5>Common Error Codes:</h5>
                    <table class="table">
                        <thead>
                            <tr>
                                <th>Code</th>
                                <th>HTTP Status</th>
                                <th>Description</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td><code>AUTH_INVALID</code></td>
                                <td>401</td>
                                <td>Invalid or missing API key</td>
                            </tr>
                            <tr>
                                <td><code>QUOTA_EXCEEDED</code></td>
                                <td>429</td>
                                <td>Monthly quota exceeded</td>
                            </tr>
                            <tr>
                                <td><code>RATE_LIMITED</code></td>
                                <td>429</td>
                                <td>Too many requests per hour</td>
                            </tr>
                            <tr>
                                <td><code>INVALID_PDF</code></td>
                                <td>400</td>
                                <td>Invalid or corrupted PDF file</td>
                            </tr>
                            <tr>
                                <td><code>PROCESSING_FAILED</code></td>
                                <td>500</td>
                                <td>PDF processing error</td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </div>

            <!-- Rate Limits -->
            <div class="row mt-5">
                <div class="col-12">
                    <h2>🚦 Rate Limits</h2>
                    <table class="table">
                        <thead>
                            <tr>
                                <th>Plan</th>
                                <th>Requests/Hour</th>
                                <th>Monthly PDFs</th>
                                <th>Price</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td>Free Trial</td>
                                <td>100</td>
                                <td>100</td>
                                <td>Free</td>
                            </tr>
                            <tr>
                                <td>Starter</td>
                                <td>1,000</td>
                                <td>1,000</td>
                                <td>$29.99</td>
                            </tr>
                            <tr>
                                <td>Business</td>
                                <td>5,000</td>
                                <td>5,000</td>
                                <td>$69.99</td>
                            </tr>
                            <tr>
                                <td>Professional</td>
                                <td>10,000</td>
                                <td>10,000</td>
                                <td>$99.99</td>
                            </tr>
                            <tr>
                                <td>Enterprise</td>
                                <td>50,000</td>
                                <td>Unlimited</td>
                                <td>$199.99</td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </div>

            <!-- Data Formats -->
            <div class="row mt-5">
                <div class="col-12">
                    <h2>📊 Supported Data Formats</h2>
                    
                    <div class="row">
                        <div class="col-md-4">
                            <h5>✅ Core Formats (Available Now)</h5>
                            <ul class="list-group list-group-flush">
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>JSON</strong> - Modern web APIs</span>
                                    <span class="badge bg-success">Ready</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>XML</strong> - Enterprise systems</span>
                                    <span class="badge bg-success">Ready</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>CSV</strong> - Spreadsheet data</span>
                                    <span class="badge bg-success">Ready</span>
                                </li>
                            </ul>
                        </div>
                        
                        <div class="col-md-4">
                            <h5>🚀 Professional Formats (Available Now)</h5>
                            <ul class="list-group list-group-flush">
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>DBF</strong> - xBase/dBase systems</span>
                                    <span class="badge bg-primary">Pro</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>Excel</strong> - .xlsx spreadsheets</span>
                                    <span class="badge bg-primary">Pro</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>Form-Data</strong> - HTTP multipart</span>
                                    <span class="badge bg-primary">Pro</span>
                                </li>
                            </ul>
                        </div>
                        
                        <div class="col-md-4">
                            <h5>⚡ On-Demand Formats (24hr Implementation)</h5>
                            <ul class="list-group list-group-flush">
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>YAML</strong> - DevOps configs</span>
                                    <span class="badge bg-warning">24hr</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>Protobuf</strong> - Google services</span>
                                    <span class="badge bg-warning">24hr</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>TOML</strong> - Rust configs</span>
                                    <span class="badge bg-warning">24hr</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>EDI/EDIFACT</strong> - Business transactions</span>
                                    <span class="badge bg-warning">24hr</span>
                                </li>
                                <li class="list-group-item d-flex justify-content-between">
                                    <span><strong>Fixed-Width</strong> - Mainframe data</span>
                                    <span class="badge bg-warning">24hr</span>
                                </li>
                            </ul>
                            <div class="mt-3 p-3 bg-light rounded">
                                <small><strong>💰 On-Demand Implementation:</strong><br>
                                $99 setup fee + regular usage charges<br>
                                <em>Contact sales for custom enterprise formats</em></small>
                            </div>
                        </div>
                    </div>
                    
                    <!-- Format Examples -->
                    <div class="mt-4">
                        <h5>📝 Format Examples</h5>
                        
                        <ul class="nav nav-tabs" id="formatTabs" role="tablist">
                            <li class="nav-item">
                                <button class="nav-link active" data-bs-toggle="tab" data-bs-target="#json-format">JSON</button>
                            </li>
                            <li class="nav-item">
                                <button class="nav-link" data-bs-toggle="tab" data-bs-target="#dbf-format">DBF</button>
                            </li>
                            <li class="nav-item">
                                <button class="nav-link" data-bs-toggle="tab" data-bs-target="#excel-format">Excel</button>
                            </li>
                            <li class="nav-item">
                                <button class="nav-link" data-bs-toggle="tab" data-bs-target="#form-data-format">Form-Data</button>
                            </li>
                        </ul>
                        
                        <div class="tab-content border border-top-0 p-3">
                            <div class="tab-pane fade show active" id="json-format">
                                <pre><code class="language-json">{
  "format": "json",
  "data": {
    "customer_name": "Maya Inc",
    "invoice_date": "2024-01-15",
    "items": [
      {"description": "Service", "amount": 100.00}
    ]
  }
}</code></pre>
                            </div>
                            
                            <div class="tab-pane fade" id="dbf-format">
                                <pre><code class="language-json">{
  "format": "dbf",
  "data": {
    "dbf_file": "base64_encoded_dbf_content",
    "record_mapping": {
      "CUSTNAME": "customer_name",
      "INVDATE": "invoice_date", 
      "AMOUNT": "total_amount"
    }
  }
}</code></pre>
                                <small class="text-muted">Perfect for xHarbour, Clipper, and FoxPro systems</small>
                            </div>
                            
                            <div class="tab-pane fade" id="excel-format">
                                <pre><code class="language-json">{
  "format": "excel",
  "data": {
    "excel_file": "base64_encoded_xlsx_content",
    "sheet_name": "InvoiceData",
    "header_row": 1,
    "column_mapping": {
      "A": "customer_name",
      "B": "invoice_date",
      "C": "total_amount"
    }
  }
}</code></pre>
                                <small class="text-muted">Direct Excel file processing for business users</small>
                            </div>
                            
                            <div class="tab-pane fade" id="form-data-format">
                                <pre><code class="language-http">POST /api/pdf/fill
Content-Type: multipart/form-data
Authorization: Bearer YOUR_API_KEY

--boundary
Content-Disposition: form-data; name="template_pdf"; filename="invoice.pdf"
Content-Type: application/pdf

[PDF file content]
--boundary
Content-Disposition: form-data; name="customer_name"

Maya Inc
--boundary
Content-Disposition: form-data; name="total_amount"

$1,250.00</code></pre>
                                <small class="text-muted">Standard HTML form submissions</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <!-- SDKs and Examples -->
            <div class="row mt-5">
                <div class="col-12">
                    <h2>🛠️ SDK Examples</h2>
                    
                    <h4>JavaScript/Node.js</h4>
                    <pre><code class="language-javascript">const MayaPdfFiller = require('maya-pdf-filler');

const client = new MayaPdfFiller('YOUR_API_KEY');

const result = await client.fillPdf({
  template: fs.readFileSync('template.pdf'),
  data: {
    customer_name: 'Maya Inc',
    invoice_total: '$1,250.00'
  }
});

fs.writeFileSync('filled.pdf', result.pdfBuffer);</code></pre>

                    <h4>PHP</h4>
                    <pre><code class="language-php">$client = new MayaPdfFiller('YOUR_API_KEY');

$result = $client->fillPdf([
    'template_pdf' => base64_encode(file_get_contents('template.pdf')),
    'data' => [
        'customer_name' => 'Maya Inc',
        'invoice_total' => '$1,250.00'
    ]
]);

file_put_contents('filled.pdf', base64_decode($result['filled_pdf']));</code></pre>

                    <h4>Python</h4>
                    <pre><code class="language-python">from maya_pdf_filler import MayaPdfFiller

client = MayaPdfFiller('YOUR_API_KEY')

with open('template.pdf', 'rb') as f:
    result = client.fill_pdf(
        template=f.read(),
        data={
            'customer_name': 'Maya Inc',
            'invoice_total': '$1,250.00'
        }
    )

with open('filled.pdf', 'wb') as f:
    f.write(result['pdf_bytes'])</code></pre>
                </div>
            </div>
        </div>

        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/prism.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-json.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-javascript.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-php.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-python.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.24.1/components/prism-bash.min.js"></script>
    </body>
    </html>
    