{"uid":"cap_3uw8mJOoXulkT8vgcMJou","slug":"tanod-docs-pdf-merge-26dd7ac3","name":"Tanod Docs PDF Merge","description":"Documents: DOCX template fill, Office to PDF, any file to Markdown, PDF to Word, OCR, PDF pipeline.","url":"https://docs.tanod.dev/v1/pdf/merge?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"inputs":{"type":"array","items":{"type":"object","properties":{"url":{"anyOf":[{"type":"string","maxLength":2048,"minLength":1},{"type":"null"}],"default":null,"description":"Public http(s) URL of the PDF (at most 20 MB; private, internal and IP-literal hosts are refused); or use pdf_base64."},"pages":{"anyOf":[{"type":"string","pattern":"^[0-9a-zA-Z ,\\-]+$","maxLength":200,"minLength":1},{"type":"null"}],"default":null,"description":"Pages of this input to take (default all), e.g. 1-3,5."},"pdf_base64":{"anyOf":[{"type":"string","maxLength":13398872,"minLength":1},{"type":"null"}],"default":null,"description":"The PDF as base64 (at most 10 MB decoded per request); or use url."}},"additionalProperties":false},"maxItems":20,"minItems":2,"description":"2-20 PDFs, each {url} or {pdf_base64}, with optional pages."},"output":{"enum":["base64","url"],"type":"string","default":"base64","description":"base64 (default): the file comes back inline as base64. url: the file is stored for 24 hours and the reply carries a download link (url, expires_at, bytes, content_type, sha256) instead of the base64, which keeps the file out of your context window."}}},"responseSchema":{"type":"json","example":{"file":{"name":"merged.pdf","bytes":30634,"pages":2,"data_base64":"JVBERi0xLjQKJb/3... (trimmed: 40,848 base64 characters in the reply)","content_type":"application/pdf"},"inputs":2,"operation":"merge","input_bytes":32074,"output_bytes":30634,"pages_per_input":[1,1],"untrusted_content":true,"active_content_removed":{}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_RBHNMvc5d4YSxxBhuz6zI","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Merges 2–20 PDF files (by URL or base64) into a single PDF, with optional per-input page selection, returning the result inline or as a download link.","exampleAgentPrompt":"I have two PDFs — one at https://example.com/cover.pdf and another at https://example.com/body.pdf — can you merge them into a single PDF and give me back the base64 result?","exampleUseCases":[{"title":"Combine report sections into one PDF","prompt":"I have three separate PDF sections for our quarterly report at these URLs: https://cdn.co/exec-summary.pdf, https://cdn.co/financials.pdf, and https://cdn.co/appendix.pdf — please merge them in order into one final PDF and return the base64."},{"title":"Merge selected pages from multiple PDFs","prompt":"Can you combine pages 1-3 from https://files.co/contract.pdf and pages 5,7 from https://files.co/exhibits.pdf into a single merged PDF? Give me a download link instead of base64 so it stays out of the conversation."},{"title":"Assemble invoice and receipt for records","prompt":"I need to merge my invoice PDF (base64: JVBERi0x...) with my payment receipt PDF at https://billing.co/receipt.pdf into one document — return it as base64 please."}],"resultDescription":"Returns a JSON object with a 'file' object containing the merged PDF as base64 (or a 24-hour download URL if url output was requested), plus metadata including file name, byte count, page count, content type, number of inputs processed, and a SHA256 hash for integrity verification. Also reports pages contributed per input and whether active content was removed.","failureModes":["PDF URL exceeds 20 MB size limit — request rejected","base64-encoded PDF exceeds 10 MB decoded limit — request rejected","URL points to a private, internal, or IP-literal host — refused for security","Fewer than 2 input PDFs provided — validation error","More than 20 input PDFs provided — validation error","Invalid page range format — rejected by pattern validation","URL is unreachable or returns non-PDF content — processing error","Malformed base64 string — decoding error"],"whenToPreferThis":"Choose this endpoint when you need to programmatically combine 2–20 PDFs (supplied as URLs or base64) into a single PDF, especially when page-level selection per input is required. It is particularly suitable for automation pipelines that produce multi-part documents (e.g. cover + body + appendix). Prefer the 'url' output mode when the merged file would be large, to avoid bloating the agent's context window. This is not suitable for image merging, Word document merging, or non-PDF formats.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-15T02:14:33.643Z","isFirstParty":false,"canonicalSlug":"tanod-docs-pdf-merge-26dd7ac3"}