• Solutions
  • Glossary
  • Blog
  • Documentation
  • Pricing
  • FAQ

Doana - AI customs agents for aviation, freight and supply chain teams.

From your inbox to export-ready data, without changing how your team works.

About
  • About
  • Blog
  • Glossary
  • Contact
Product
  • Solutions
  • AOG email triage
  • CARM automation
  • How it works
  • AI agents
  • Developers
Legal
  • Terms of Service
  • Privacy Policy
  • Cookie Policy
  • llms.txt

© Copyright 2026 Doana. All Rights Reserved.

Doana
Developers / Infrastructure for document workflows

Infrastructure for document workflows

Customs API for AI Agents: Aviation Document Extraction

Cover Image for Customs API for AI Agents: Aviation Document Extraction

In this product a customs API extracts and prepares aviation certificate data. It does not file an entry. If you connect an internal agent hoping it will submit a declaration, the catalog will not do that job.

Doana’s public interface supplies EASA Form 1 extraction for customs preparation. Bring reviewed fields back into the broker or forwarder system you already trust. The scope below is that extraction contract, not a filing API, tariff engine, or duty-payment rail.

Create a Doana account and call extract_easa_form1Inspect OpenAPI

Public catalog as of 12 September 2026: extract_easa_form1 only.

Customs API here means extraction

An agent can pull structured EASA Form 1 fields, list exceptions, and wait for a human. It is not a customs entry API, not a classification engine, and not a payment rail. Say that in the first design review or operators will assume filing.

EASA Form 1 remains a release certificate. Origin, valuation and procedure still come from other evidence in the packet. The agent’s job is to make certificate data reviewable, not to invent missing customs facts from general aviation knowledge. Keep serial numbers as arrays in every export.

  • Doana public tool catalog
  • EASA: What is an EASA Form 1?

What the catalog does not file

The public catalog does not expose customs declaration submission, binding tariff rulings, duty payment or freight booking. An agent preparing a shipment may still need those capabilities from other systems, wired as separate tools with separate permissions, owners, and audit logs.

If the packet contains an FAA-only 8130-3, an invoice or an air waybill, keep those documents off extract_easa_form1. Classify the packet first. documentType unknown is an unresolved input on a usually succeeded job, not a draft customs entry line.

  • Doana public tool catalog

Call extract_easa_form1 from an internal agent

Create a personal account, add https://doana.ca/api/mcp, complete OAuth, and list tools. For a file up to 64 KiB, pass lossless content_base64. Otherwise call create_mcp_upload, PUT the bytes or use browser_upload_url, then extract with upload_id. ChatGPT workspaces use the signed file object instead.

Poll get_extraction_result with the returned job_id while status is dispatch_pending, queued, running or outcome_unknown. Accept the payload only when status is succeeded, documentType is easa_form_1 and result is present. Keep serial numbers as arrays. Compare uncertainFields with the certificate before any customs mapping spreadsheet is filled.

  • Doana OpenAPI contract
  • EASA Form 1 MCP walkthrough

Keep filing authorization outside the tool

Store the job identifier with your internal document reference. Preserve original extracted values and uncertainty indicators. Route exceptions to an operator. Pass only reviewed data into the application that is allowed to file. A transport-level MCP success is not an accepted customs fact.

Handle expired uploads by obtaining a new upload slot. After a timeout, poll the known job rather than extracting again. Treat failed_refundable or failed_charged jobs as unresolved and show lastError. Keep downstream filing authorization in your own roles, not in certificate remarks the model might quote.

  • EASA Form 1 MCP walkthrough
  • Doana OpenAPI contract

On this page

  1. Customs API here means extraction
  2. What the catalog does not file
  3. Call extract_easa_form1 from an internal agent
  4. Keep filing authorization outside the tool

Related guides

  • Field schema and request example
  • Customs MCP server
  • Customs agent workflow design
Create a Doana account and call extract_easa_form1 →