{"openapi":"3.1.0","info":{"title":"well-001-extract-table","version":"1.0.0","description":"Extract tables from a PDF ($0.01 USDC via x402). Pass pdf_base64 or a https pdf_url. Optional schema maps headers. Optional max_pages (1-10). Returns JSON { pages, tables: [{ page, headers, rows }], warnings }. Text PDFs are parsed in-worker; scans require HOSTED_PARSER_URL. Provided as is, with no warranty or guarantee of accuracy or fitness. Nothing is stored.","x-guidance":"POST /api/extract-table-from-pdf with a JSON body matching the request schema. Unpaid calls get HTTP 402 with x402 v2 payment requirements (exact, USDC on Base eip155:8453, $0.01). Retry with a PAYMENT-SIGNATURE header. Payment settles only when the tool succeeds. The same tool is also available over MCP (streamable HTTP) at https://well-001-extract-table.mmelnyk2000.workers.dev/mcp as \"extract-table-from-pdf\". Provided as is, with no warranty or guarantee of accuracy or fitness. Nothing is stored.","contact":{"email":"rain-maker@mail.grokbot.com"}},"servers":[{"url":"https://well-001-extract-table.mmelnyk2000.workers.dev"}],"paths":{"/api/extract-table-from-pdf":{"post":{"operationId":"extract_table_from_pdf","summary":"extract-table-from-pdf ($0.01 USDC)","description":"Extract tables from a PDF ($0.01 USDC via x402). Pass pdf_base64 or a https pdf_url. Optional schema maps headers. Optional max_pages (1-10). Returns JSON { pages, tables: [{ page, headers, rows }], warnings }. Text PDFs are parsed in-worker; scans require HOSTED_PARSER_URL.","tags":["rainmaker"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"protocols":[{"x402":{}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"pdf_base64":{"type":"string","description":"Raw PDF encoded as base64 (optionally a data: URL). Provide this or pdf_url."},"pdf_url":{"type":"string","description":"https URL of a PDF. Provide this or pdf_base64. Max 8 MB."},"schema":{"description":"Optional header mapping. Object maps extracted header -> output name; array replaces headers in column order."},"max_pages":{"type":"integer","minimum":1,"maximum":10,"description":"Max pages to read. Capped at 10."}}},"example":{"pdf_url":"https://www.w3.org/WAI/WCAG21/Techniques/pdf/img/table-word.pdf"}}}},"responses":{"200":{"description":"Tool result (JSON). Includes an as-is notice.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"pages":1,"tables":[{"page":1,"headers":["A","B"],"rows":[["1","2"]]}],"warnings":[]}}}},"402":{"description":"Payment Required"},"422":{"description":"Tool could not complete (input or fetch problem). No payment is settled."}}}}}}