Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,552Letters: 14Defects: 1,331counted 2 min ago
teppi

Server definition

Hash
sha256:86d0332eff6cfd026baaf0d1355f22cb26a71c9187ec872bdaeceafb31f17ccd
What it is
What a remote MCP server returned when asked what it offers: 16 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Encrypt an existing PDF (given as a URL) with a user password (required to open) and an optional owner password (controls permissions). Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /pdfsharp/password.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "ownerpassword": { "description": "Optional owner password controlling permissions (printing, editing, etc.).", "type": "string" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "URL of the PDF to protect.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" }, "userpassword": { "description": "Password required to OPEN the resulting PDF.", "type": "string" } }, "required": [ "url", "userpassword" ], "type": "object" }, "name": "api2pdf_add_password", "outputSchema": null }, { "description": "Compress an existing PDF (given as a URL) to reduce its file size. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /pdfsharp/compress.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "URL of the PDF to compress.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_compress_pdf", "outputSchema": null }, { "description": "Convert a document or file (given as a URL — PDF, Office docs, and more) to Markdown text via MarkItDown. Great for feeding a document's contents back to an agent. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /markitdown.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "URL of the document/file to convert to Markdown.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_convert_to_markdown", "outputSchema": null }, { "description": "Delete a previously generated file by its ResponseId (the `ResponseId` returned in a generation response). Api2Pdf API: DELETE /file/{ResponseId}.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "responseId": { "description": "The ResponseId of the generated file to delete (from a prior generation response).", "type": "string" } }, "required": [ "responseId" ], "type": "object" }, "name": "api2pdf_delete_file", "outputSchema": null }, { "description": "Extract a range of pages from an existing PDF (given as a URL) into a new PDF. `start`/`end` are 0-based page indices; omit `end` to extract a single page. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /pdfsharp/extract-pages.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "end": { "description": "0-based index of the last page to extract. Omit for a single page (just `start`).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "start": { "description": "0-based index of the first page to extract. Default 0.", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "URL of the source PDF.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_extract_pages", "outputSchema": null }, { "description": "Generate a barcode or QR code image. `format` is the symbology (e.g. 'QRCode', 'Code128', 'PDF417', 'DataMatrix') and `value` is the string to encode. Returns a { FileUrl } (valid ~24h) by default, or base64 with output_binary:true. BILLED. Api2Pdf API: GET /zebra.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "format": { "description": "Barcode/QR symbology, e.g. 'QRCode', 'Code128', 'PDF417', 'DataMatrix'.", "type": "string" }, "height": { "description": "Image height in pixels.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "output_binary": { "description": "If true, return the raw image bytes as base64 instead of a FileUrl. Default false.", "type": "boolean" }, "showlabel": { "description": "If true, render the encoded value as a human-readable label under the barcode.", "type": "boolean" }, "value": { "description": "The string to encode in the barcode/QR code.", "type": "string" }, "width": { "description": "Image width in pixels.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "required": [ "format", "value" ], "type": "object" }, "name": "api2pdf_generate_barcode", "outputSchema": null }, { "description": "Return the remaining balance / usage for the configured Api2Pdf account. Api2Pdf API: GET /balance.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "api2pdf_get_balance", "outputSchema": null }, { "description": "Return the current Api2Pdf service / health status. Api2Pdf API: GET /status.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "api2pdf_get_status", "outputSchema": null }, { "description": "Render an HTML string to an image using headless Chrome. Returns a { FileUrl } (valid ~24h) by default, or base64 bytes with output_binary:true. BILLED. Api2Pdf API: POST /chrome/image/html.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "html": { "description": "The HTML source to render into an image.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "html" ], "type": "object" }, "name": "api2pdf_html_to_image", "outputSchema": null }, { "description": "Render an HTML string to a PDF using the headless-Chrome engine. Returns a { FileUrl } link (valid ~24h) by default. Great for invoices, reports, and letters produced as HTML. BILLED per document. Api2Pdf API: POST /chrome/pdf/html.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "html": { "description": "The HTML source to render into a PDF.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "html" ], "type": "object" }, "name": "api2pdf_html_to_pdf", "outputSchema": null }, { "description": "Render a Markdown string to a PDF using headless Chrome. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /chrome/pdf/markdown.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "markdown": { "description": "The Markdown source to render into a PDF.", "type": "string" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "markdown" ], "type": "object" }, "name": "api2pdf_markdown_to_pdf", "outputSchema": null }, { "description": "Merge several existing PDFs (given as URLs, in order) into a single PDF. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /pdfsharp/merge.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "urls": { "description": "URLs of the PDFs to merge, in the order they should appear (at least two).", "items": { "type": "string" }, "minItems": 2, "type": "array" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "urls" ], "type": "object" }, "name": "api2pdf_merge_pdfs", "outputSchema": null }, { "description": "Convert an office document (Word, Excel, PowerPoint, ODT, and many more) at a URL to a PDF using LibreOffice. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /libreoffice/any-to-pdf.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "URL of the source document to convert to PDF.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_office_to_pdf", "outputSchema": null }, { "description": "Take a screenshot of a live web page by URL using headless Chrome. Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /chrome/image/url.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "The URL of the web page to screenshot.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_url_to_image", "outputSchema": null }, { "description": "Fetch a web page by URL and render it to a PDF using headless Chrome. Returns a { FileUrl } (valid ~24h). Use extraHTTPHeaders to pass auth for a protected page. BILLED. Api2Pdf API: POST /chrome/pdf/url.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "url": { "description": "The URL of the web page Api2Pdf will fetch and render to PDF.", "type": "string" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "url" ], "type": "object" }, "name": "api2pdf_url_to_pdf", "outputSchema": null }, { "description": "Render an HTML string to a PDF using the wkhtmltopdf engine — an alternate to Chrome that supports a table of contents (pass enableToc / tocOptions inside `options`). Returns a { FileUrl } (valid ~24h). BILLED. Api2Pdf API: POST /wkhtml/pdf/html.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "extraHTTPHeaders": { "additionalProperties": { "type": "string" }, "description": "Extra HTTP headers Api2Pdf forwards when it fetches a source URL (e.g. auth for a protected page/file).", "propertyNames": { "type": "string" }, "type": "object" }, "fileName": { "description": "A name for the generated file, e.g. 'invoice.pdf'.", "type": "string" }, "html": { "description": "The HTML source to render into a PDF.", "type": "string" }, "inline": { "description": "If true (Api2Pdf default), the generated file is served inline; if false, as an attachment.", "type": "boolean" }, "options": { "additionalProperties": {}, "description": "Engine-specific render options (page size, margins, orientation, headers/footers, etc.). Passed through verbatim to Api2Pdf.", "propertyNames": { "type": "string" }, "type": "object" }, "output_binary": { "description": "If true, return the raw file bytes as base64 instead of a FileUrl. Default false (recommended for agents — returns a short-lived link).", "type": "boolean" }, "storage": { "description": "Custom storage target, used when useCustomStorage is true.", "properties": { "method": { "description": "HTTP method Api2Pdf uses to upload (e.g. 'PUT').", "type": "string" }, "url": { "description": "Pre-signed destination URL for the upload.", "type": "string" } }, "type": "object" }, "useCustomStorage": { "description": "If true, Api2Pdf uploads the result to your own storage (see `storage`) instead of hosting it.", "type": "boolean" } }, "required": [ "html" ], "type": "object" }, "name": "api2pdf_wkhtml_to_pdf", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:86d0332eff6cfd026baaf0d1355f22cb26a71c9187ec872bdaeceafb31f17ccd | sha256sum