Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
100
A2A live JSON-RPC signed A2A 1.0 v1.0.0 x402 micropay

Emboss

getemboss.ai · Emboss

Emboss turns paperwork into a filled PDF. It can make a flat PDF fillable, complete a form from data, fill a PDF form from data or from supporting context documents, and batch fill forms from a spreadsheet, one row per output file. Use it whenever an agent needs to fill a PDF form, generate many filled copies of the same form, or inspect a form's fields before filling it. Get a price quote for filling a PDF form before any paid work runs, free and exact, then execute it once you have seen the price. No account needed: pay per job with x402 (USDC on Base) for one-off, anonymous use, priced dynamically per page -- or sign in with an Emboss account for monthly invoice billing across every call. A pay-per-call HTTP door is also available at https://api.getemboss.ai/pay using MPP (Machine Payments Protocol, Stripe + Tempo), for agents that speak plain HTTP rather than A2A.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain getemboss.ai via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent. Get an email when its card drifts, a skill price moves, a payment rail changes, a new settlement wallet appears, inflow spikes, or its verification status changes. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
72/100
grade C · 9 criteria
Uptime
accumulating
1/5 direct probes · 30d
~136 ms response
Observed inflow · 30d
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
changed
1 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

C
Conformance score: 72/100
C-grade: usable but has clear conformance issues, review the breakdown below.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
pass Live JSON-RPC 25/25
Endpoint responds to a negotiated A2A SendMessage probe (answers in ~136 ms).
pass Protocol version 10/10
Declares A2A 1.0 with supportedInterfaces[] (current v1 card shape).
partial JWS signature 5/10
Card has a signatures[] entry but we haven't verified it.
How to earn +5 points
Sign your AgentCard with JWS
Add a `signatures` array to the card body following RFC 7515. Publish the public JWKS at /.well-known/jwks.json. Sign with ES256 (recommended) or RS256.
Docs →
info Uptime track record 0/15
Only 1 probe so far, need ≥5 for an uptime grade.
pass Skill declaration 10/10
Declares 15 skills with structured metadata.
partial Verified Identity 5/10
Provider declared: Emboss (https://getemboss.ai). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 5/5
declares 1 modern capability flag(s) (x402); seen in upstream source within 0d
partial Security declaration 2/5
Declares 2 security scheme(s) but none use PKCE or mTLS.
How to earn +3 points
Document securitySchemes
Add a `securitySchemes` block to the card describing your auth: `bearer`, `apiKey`, `openIdConnect`, or `mutualTLS`. Routers refuse to call agents that declare no auth model.
Docs →
⚠ Card drift detected. This agent's agent-card.json changed within the last 7 days. We track these so downstream callers can react.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

1 snapshot Every change to agent-card.json
Captured Hash
2026-09-09 01:34:37 current 757267a12427… view →
Uptime
accumulating
1 direct probes · 30d
Response
359ms
last direct probe
Skills
15
declared
Streaming
SSE-capable

Try it

Send a message to this agent live. Your prompt is proxied through Agenstry.

calling agent…

Endpoints

Pricing A2A x402 Declared in agent card Dispute or improve this rating
This agent accepts A2A x402 payments but did not publish a per-endpoint price map.
Try it ↗ Opens the operator's documentation in a new tab.
Agent cardhttps://getemboss.ai/.well-known/agent-card.json
Providerhttps://getemboss.ai
Docshttps://getemboss.ai/docs/a2a
Discovered via
lists

Skills · 15 declared · mapped to canonical taxonomy

Make a PDF fillable

Turn a flat or scanned PDF form into a fillable PDF with detected fields. Make a flat PDF fillable. Input: a flat (non-fillable) PDF file, or a `library` slug f…

canonical Document Summarization match 80%
document-processingform-schemaformsmake-fillablepdf
Fill a form from data

Fill a PDF form from structured data such as JSON or key-value answers. Fill a PDF form from data. Input: a form_id (from make_fillable or find_forms) or a flat…

canonical Text-to-3D match 80%
data-entryfill-pdfform-fillingformsjson
Fill a form from context documents

Fill a PDF form using facts found in supporting documents. Complete a form from data found in supporting documents. Input: a form_id, a PDF file, or a `library`…

canonical Document Summarization match 82%
context-filldocument-extractiondocument-processingextractionfill-pdf
Prepare a form from documents

Prepare a form from documents: a proposal of every answer with its source, what is missing, and where documents disagree, before writing, plus attachments for a…

canonical Document Summarization match 82%
agentsextractionformspdfreview
Batch fill forms from a spreadsheet

Fill one copy of a PDF form for every row of a spreadsheet. Batch fill forms from a spreadsheet. Input: a form_id or PDF file, plus a CSV file (or rows) with on…

canonical Tax Compliance and Filing match 79%
batchfill-pdfformsmail-mergepdf
Suggest a column-to-field mapping

Propose which spreadsheet columns fill which PDF form fields. Suggest how spreadsheet columns map to form fields before a batch fill. Input: a form_id or PDF fi…

canonical Document Summarization match 81%
form-schemaformsmappingpdfspreadsheet
Find previously processed forms

Find forms previously made fillable, by title search and state. Input: an optional query string, state filter (ready, processing, failed, or all), and a result …

canonical Get Article match 83%
pdfformssearch
Find a blank government form

Find a blank government form in the Emboss library by name or number, ready to fill. Find a blank US federal form in the Emboss library, by name, number or alia…

canonical Get Article match 81%
form-schemaformsgovernment-formslibrarypdf
Get a form's status and field inventory

Get a form's current status and field inventory. Input: a form_id. Output: the form's state (ready, processing, or failed), title, page count, and field list.

canonical Get Article match 82%
pdfformsinspection
Commit a proposal

Write the answers into the form, render it with text that fits, check it, and return the PDF with a report and a receipt, or one submission package. Commit a pr…

canonical Proposal and SOW Generation match 83%
agentsformspdf
Check a filled form

Check a filled form: required fields, allowed options, consistent choices, text that fits, empty signature boxes; returns complete, review required, incomplete …

canonical Agent Profiles match 82%
agentsformspdfverification
Read a filled form back

Read the values out of a filled PDF form, labelled by field, with a completeness verdict when the form is known. Read the values out of a filled PDF. Input: the…

canonical Tax Compliance and Filing match 81%
document-extractionextractionform-schemaformspdf
Attach a document to a proposal

Attach one supporting document to a proposal from prepare, so the commit can hand back one submission package. Input: a proposal_id, the document as a FilePart …

canonical Proposal and SOW Generation match 81%
pdfformsagentsattachments
Get a price quote for filling a PDF form

Get a price quote for filling a PDF form before any paid work runs. Input: the target skill (make_fillable, fill_form, fill_from_context, suggest_mapping, or fi…

canonical Get Article match 82%
pdfformspricingquote
Run a previously quoted job

Run the job priced by a previous quote_job call, from its staged inputs, with no re-upload. Input: a quote_id. Output: the same result the quoted skill's own di…

canonical Proposal and SOW Generation match 82%
pdfformspricingquote

Health · last 1 probes

When HTTP Live JSON-RPC Latency
2026-09-09 01:34:37 200 359ms

Similar agents embedding-nearest

Emboss live
Emboss turns paperwork into a filled PDF. It can make a flat PDF fillable, complete a form from data, fill a PDF form from data or from supp
Emboss · q 100%
schemasure.com
Extract strict, JSON-Schema-valid typed JSON from a PNG, JPEG, or WebP document image. Failed extraction calls are not settled. Always-paid
schemasure.com · q 65%
PostalForm live
PostalForm helps AI agents create reviewable physical-mail drafts and, when explicitly authorized, pay for print-and-mail orders through MCP
PostalForm · q 100%
api.agentwork.run
Extract embedded text from a public digital PDF into page-numbered JSON for RAG, research and document ingestion. $0.01 USDC on Base or Algo
api.agentwork.run · q 65%
x402-signature-service
Send one PDF to one email recipient for simple electronic signature. The service emails the signer, tracks completion, and returns the compl
signx402.com · q 65%
agent-web live
Charter-clean web toolkit for agents: give it one publicly reachable URL, get back clean, LLM-ready markdown (free), or a screenshot/PDF via
FOOM — foomworks · q 100%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/getemboss.ai.svg)](https://agenstry.com/agents/getemboss.ai)
[![Verified Business](https://agenstry.com/badge/getemboss.ai/identity.svg)](https://agenstry.com/agents/getemboss.ai)
[![Uptime](https://agenstry.com/badge/getemboss.ai/uptime.svg)](https://agenstry.com/agents/getemboss.ai)
[![A2A version](https://agenstry.com/badge/getemboss.ai/protocol.svg)](https://agenstry.com/agents/getemboss.ai)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "name": "Emboss",
  "description": "Emboss turns paperwork into a filled PDF. It can make a flat PDF fillable, complete a form from data, fill a PDF form from data or from supporting context documents, and batch fill forms from a spreadsheet, one row per output file. Use it whenever an agent needs to fill a PDF form, generate many filled copies of the same form, or inspect a form's fields before filling it. Get a price quote for filling a PDF form before any paid work runs, free and exact, then execute it once you have seen the price. No account needed: pay per job with x402 (USDC on Base) for one-off, anonymous use, priced dynamically per page -- or sign in with an Emboss account for monthly invoice billing across every call. A pay-per-call HTTP door is also available at https://api.getemboss.ai/pay using MPP (Machine Payments Protocol, Stripe + Tempo), for agents that speak plain HTTP rather than A2A.",
  "supportedInterfaces": [
    {
      "url": "https://api.getemboss.ai/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    }
  ],
  "version": "1.0.0",
  "documentationUrl": "https://getemboss.ai/docs/a2a",
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "extensions": [
      {
        "uri": "https://github.com/google-a2a/a2a-x402/v0.1",
        "description": "Pay per job over A2A with x402 (USDC on Base), for anonymous callers with no Emboss account. See quote_job/execute_quote and the five paid skills' input-required payment flow.",
        "required": false
      }
    ]
  },
  "securitySchemes": {
    "bearer": {
      "type": "http",
      "scheme": "bearer",
      "bearerFormat": "Emboss API key (sk_...)",
      "description": "An Emboss API key. See https://getemboss.ai/docs/authentication."
    },
    "oauth2": {
      "type": "oauth2",
      "description": "Sign in with your Emboss account. See https://getemboss.ai/docs/authentication.",
      "flows": {
        "authorizationCode": {
          "authorizationUrl": "https://api.getemboss.ai/oauth/authorize",
          "tokenUrl": "https://api.getemboss.ai/oauth/token",
          "scopes": {
            "forms:read": "Read your forms",
            "forms:write": "Create and fill forms"
          }
        }
      }
    }
  },
  "securityRequirements": [
    {
      "bearer": [
        "forms:read",
        "forms:write"
      ]
    },
    {
      "oauth2": [
        "forms:read",
        "forms:write"
      ]
    }
  ],
  "defaultInputModes": [
    "application/pdf",
    "text/csv",
    "application/json"
  ],
  "defaultOutputModes": [
    "application/pdf",
    "application/json"
  ],
  "skills": [
    {
      "id": "make_fillable",
      "name": "Make a PDF fillable",
      "description": "Turn a flat or scanned PDF form into a fillable PDF with detected fields. Make a flat PDF fillable. Input: a flat (non-fillable) PDF file, or a `library` slug from find_form to start from a blank government form Emboss already keeps. Output: a form_id and a field inventory (labels, types, positions) detected on the PDF, ready for fill_form or fill_from_context. Also: detect form fields in a PDF; add fillable fields to a document; extract a PDF form schema; make a government or business form fillable. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "document-processing",
        "form-schema",
        "forms",
        "make-fillable",
        "pdf",
        "pdf-form-fields"
      ],
      "examples": [
        "make this PDF fillable",
        "turn this scanned PDF into a fillable form",
        "add fillable fields to this document"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "fill_form",
      "name": "Fill a form from data",
      "description": "Fill a PDF form from structured data such as JSON or key-value answers. Fill a PDF form from data. Input: a form_id (from make_fillable or find_forms) or a flat PDF file, plus a values object mapping field names to answers. Output: a filled PDF file (flattened on request) and the form_id. Also: fill a PDF form from JSON; populate form fields from data; complete a PDF application from known values; write answers into a form. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "data-entry",
        "fill-pdf",
        "form-filling",
        "forms",
        "json",
        "pdf"
      ],
      "examples": [
        "fill a PDF form",
        "fill in this form with these values",
        "complete this application with my details"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "fill_from_context",
      "name": "Fill a form from context documents",
      "description": "Fill a PDF form using facts found in supporting documents. Complete a form from data found in supporting documents. Input: a form_id, a PDF file, or a `library` slug from find_form, plus one or more context files and/or freeform context text (a resume, a prior filing, notes) to extract answers from. Output: a filled PDF file, the form_id, and a report of which fields were filled with what confidence. Also: fill a PDF form from DOCX, spreadsheets, images, JSON, or other documents; pre-fill a government form from supporting paperwork; complete an application from a resume or company details; extract answers from context documents into a form. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "context-fill",
        "document-extraction",
        "document-processing",
        "extraction",
        "fill-pdf",
        "forms",
        "pdf"
      ],
      "examples": [
        "fill out this W-9 from my company details",
        "use my resume to fill out this application",
        "complete this form from last year's tax return",
        "fill this intake form from my notes"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "prepare",
      "name": "Prepare a form from documents",
      "description": "Prepare a form from documents: a proposal of every answer with its source, what is missing, and where documents disagree, before writing, plus attachments for a package. Prepare a form instead of filling it. Input: a form_id or PDF file, plus one or more context files and/or freeform context text, and an optional policy (safe or strict). Output: a proposal_id and the proposal itself, listing every field's proposed answer with the document it came from, the questions still open, and the signatures and attachments a person still has to supply. Nothing is written into the PDF until a later call commits it. Also: review a form before it is filled; see which answers came from which document; find the gaps in an application; check a form for conflicting information; propose answers for review instead of writing them. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "agents",
        "extraction",
        "forms",
        "pdf",
        "review"
      ],
      "examples": [
        "what do I still need to fill in this form",
        "which answers came from which document",
        "prepare this application from these files",
        "check this form before you fill it in"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "fill_batch",
      "name": "Batch fill forms from a spreadsheet",
      "description": "Fill one copy of a PDF form for every row of a spreadsheet. Batch fill forms from a spreadsheet. Input: a form_id or PDF file, plus a CSV file (or rows) with one row per filled copy, and an optional column-to-field mapping. Output: one filled PDF per row and the form_id. Also: batch fill PDF forms from a CSV or Excel file; mail-merge a PDF form; generate many filled forms from a table of records. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "batch",
        "fill-pdf",
        "forms",
        "mail-merge",
        "pdf",
        "spreadsheet"
      ],
      "examples": [
        "fill one copy of this form for each row in my CSV",
        "batch fill forms from a spreadsheet",
        "generate a filled form for every employee in this sheet"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "suggest_mapping",
      "name": "Suggest a column-to-field mapping",
      "description": "Propose which spreadsheet columns fill which PDF form fields. Suggest how spreadsheet columns map to form fields before a batch fill. Input: a form_id or PDF file, plus a CSV file or a list of column names. Output: a suggested mapping from columns to field names for review. Also: map CSV columns to form fields; match spreadsheet headers to a PDF form; plan a batch fill.",
      "tags": [
        "form-schema",
        "forms",
        "mapping",
        "pdf",
        "spreadsheet"
      ],
      "examples": [
        "which column goes in which field",
        "match my spreadsheet columns to the form fields",
        "check the column mapping before a batch fill"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "find_forms",
      "name": "Find previously processed forms",
      "description": "Find forms previously made fillable, by title search and state. Input: an optional query string, state filter (ready, processing, failed, or all), and a result limit. Output: a list of matching forms with their form_id, title, and state.",
      "tags": [
        "pdf",
        "forms",
        "search"
      ],
      "examples": [
        "find the lease form I made last week",
        "show me the forms I've uploaded",
        "search my forms for the W-9"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "find_form",
      "name": "Find a blank government form",
      "description": "Find a blank government form in the Emboss library by name or number, ready to fill. Find a blank US federal form in the Emboss library, by name, number or alias. Input: a query string such as 'W-9', 'i9' or 'taxpayer identification'. Output: each matching form's slug, title, agency, revision and page count. Pass a slug as `library` on make_fillable or fill_from_context to start from that form instead of uploading one. Also: look up a blank IRS or USCIS form; find a W-9 or an I-9 to fill in; get a blank federal form by its number; search a library of government forms.",
      "tags": [
        "form-schema",
        "forms",
        "government-forms",
        "library",
        "pdf",
        "search"
      ],
      "examples": [
        "find me a blank W-9",
        "do you have the I-9 form",
        "which government forms can I fill in here"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "get_form",
      "name": "Get a form's status and field inventory",
      "description": "Get a form's current status and field inventory. Input: a form_id. Output: the form's state (ready, processing, or failed), title, page count, and field list.",
      "tags": [
        "pdf",
        "forms",
        "inspection"
      ],
      "examples": [
        "is my form ready yet",
        "what fields are on this form",
        "check the status of my form"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "commit",
      "name": "Commit a proposal",
      "description": "Write the answers into the form, render it with text that fits, check it, and return the PDF with a report and a receipt, or one submission package. Commit a proposal from prepare: write any remaining values, render the PDF with text that fits, check it, and return the filled PDF with a report and a receipt. Input: a proposal_id from prepare, plus any values still needed (field_id, value, and an optional note), an optional policy (safe or strict), and an optional package flag. With package the output is one submission package as well: the filled form, the proposal's attachments in the order the form asks for them, and the receipt embedded in the file. Output: a job_id; when the task completes, the verification result, a receipt link, the filled PDF, and the package when one was asked for. Also: commit a proposal to a filled PDF; render a prepared form; finalize a form after review; write the reviewed answers into the document.",
      "tags": [
        "agents",
        "forms",
        "pdf"
      ],
      "examples": [
        "write the answers into the form and check it",
        "render this proposal into a filled PDF",
        "finalize this form now that the answers are confirmed"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "verify",
      "name": "Check a filled form",
      "description": "Check a filled form: required fields, allowed options, consistent choices, text that fits, empty signature boxes; returns complete, review required, incomplete or failed. Check a filled PDF against a form's contract: required fields, allowed options, consistent choices, text that fits, empty signature boxes. Input: a form_id and the filled PDF (a FilePart or a url). Output: complete, review required, incomplete, or failed, plus the list of issues found. Also: verify a filled PDF form; check a completed form for missing or invalid fields; validate a filled-in document before submitting it.",
      "tags": [
        "agents",
        "forms",
        "pdf",
        "verification"
      ],
      "examples": [
        "check whether this filled form is complete",
        "what is still missing on this filled PDF",
        "validate this completed form before I submit it"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "read_form",
      "name": "Read a filled form back",
      "description": "Read the values out of a filled PDF form, labelled by field, with a completeness verdict when the form is known. Read the values out of a filled PDF. Input: the filled PDF as a FilePart (url or inline bytes), and optionally a form_id when the form is already in the account. Output: every form box in the file with its value and whether it is filled, the labels and required flags when the form is recognised, and a completeness verdict. Nothing is stored. Also: extract form data; get values from a filled PDF; read a completed form back into data; pull the answers out of a filled application; turn a filled PDF into JSON.",
      "tags": [
        "document-extraction",
        "extraction",
        "form-schema",
        "forms",
        "pdf",
        "read-back"
      ],
      "examples": [
        "read the values out of this filled PDF",
        "what did someone write in this form",
        "turn this completed form into data"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "attach",
      "name": "Attach a document to a proposal",
      "description": "Attach one supporting document to a proposal from prepare, so the commit can hand back one submission package. Input: a proposal_id, the document as a FilePart (PDF, PNG or JPEG), and optionally `for` in the message metadata naming one of the proposal's requirements. Output: the attachment's number, the requirement it satisfies, its size and its hash. Optional input: retention (ephemeral or account_default; the account's own setting by default). Ephemeral processing: source and output documents are deleted 60 to 70 minutes after the last activity on a form.",
      "tags": [
        "pdf",
        "forms",
        "agents",
        "attachments"
      ],
      "examples": [
        "attach my passport to this form",
        "add the bank statement this application needs",
        "upload the proof of address for this proposal"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "quote_job",
      "name": "Get a price quote for filling a PDF form",
      "description": "Get a price quote for filling a PDF form before any paid work runs. Input: the target skill (make_fillable, fill_form, fill_from_context, suggest_mapping, or fill_batch) and its own input, exactly as a direct call to that skill would take. Output: a quote_id, price, and expiry, computed and locked in before anything runs.",
      "tags": [
        "pdf",
        "forms",
        "pricing",
        "quote"
      ],
      "examples": [
        "get a price quote for filling a PDF form",
        "how much would it cost to fill this form",
        "quote me a price before you run this"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    },
    {
      "id": "execute_quote",
      "name": "Run a previously quoted job",
      "description": "Run the job priced by a previous quote_job call, from its staged inputs, with no re-upload. Input: a quote_id. Output: the same result the quoted skill's own direct call would return (a filled PDF, a fillable form, or a batch of filled copies).",
      "tags": [
        "pdf",
        "forms",
        "pricing",
        "quote"
      ],
      "examples": [
        "run the quote I just got",
        "execute that quoted job",
        "go ahead and fill it now that I've seen the price"
      ],
      "inputModes": [
        "application/pdf",
        "text/csv",
        "application/json"
      ],
      "outputModes": [
        "application/pdf",
        "application/json"
      ]
    }
  ],
  "provider": {
    "organization": "Emboss",
    "url": "https://getemboss.ai"
  },
  "signatures": [
    {
      "protected": "eyJhbGciOiJFZERTQSIsImprdSI6Imh0dHBzOi8vYXBpLmdldGVtYm9zcy5haS8ud2VsbC1rbm93bi9hMmEtandrcy5qc29uIiwia2lkIjoiZW1ib3NzLWEyYS0xIiwidHlwIjoiSk9TRSJ9",
      "signature": "oKDQwz_fiiwmn0yfXdpNL7U0nmxTMzWFTfGu3knpSltbmm8XzII8hgB2vafANGZR0hrkhKAMeGOjcShMzxKbCA"
    }
  ]
}