› compliance_grid.aiCOMPLIANCEGRIDGOV · COMPLIANCE · INTELLIGENCE
AES Filing

Create Filing

POST/v1/aes/filing$0.05 per call

Create a draft EEI filing.

Send an Idempotency-Key header to retry safely.

Request body

FieldTypeDescription
usppiNameoptionalstringmin length 1 · max length 70
usppirequiredobject
usppi.companyNamerequiredstringmin length 1 · max length 70
usppi.einrequiredstringEmployer identification number, XX-XXXXXXX
usppi.addressrequiredobject
usppi.address.line1requiredstringmin length 1 · max length 60
usppi.address.line2optionalstringmax length 60
usppi.address.cityrequiredstringmin length 1 · max length 30
usppi.address.staterequiredstringmin length 2 · max length 2
usppi.address.ziprequiredstring
usppi.contactNamerequiredstringmin length 1 · max length 45
usppi.phonerequiredstringmin length 7 · max length 20
usppi.emailoptionalstringformat email
ultimateConsigneerequiredobject
ultimateConsignee.companyNamerequiredstringmin length 1 · max length 70
ultimateConsignee.addressrequiredobject
ultimateConsignee.address.line1requiredstringmin length 1 · max length 60
ultimateConsignee.address.line2optionalstringmax length 60
ultimateConsignee.address.cityrequiredstringmin length 1 · max length 30
ultimateConsignee.address.stateProvinceoptionalstringmax length 30
ultimateConsignee.address.postalCodeoptionalstringmax length 12
ultimateConsignee.address.countryrequiredstringmin length 2 · max length 2
ultimateConsignee.typerequiredstringmin length 1 · max length 1
intermediateConsigneeoptionalobject
intermediateConsignee.companyNamerequiredstringmin length 1 · max length 70
intermediateConsignee.addressrequiredobject
intermediateConsignee.address.line1requiredstringmin length 1 · max length 60
intermediateConsignee.address.line2optionalstringmax length 60
intermediateConsignee.address.cityrequiredstringmin length 1 · max length 30
intermediateConsignee.address.stateProvinceoptionalstringmax length 30
intermediateConsignee.address.postalCodeoptionalstringmax length 12
intermediateConsignee.address.countryrequiredstringmin length 2 · max length 2
forwardingAgentoptionalobject
forwardingAgent.companyNamerequiredstringmin length 1 · max length 70
forwardingAgent.einoptionalstring
forwardingAgent.addressrequiredobject
forwardingAgent.address.line1requiredstringmin length 1 · max length 60
forwardingAgent.address.line2optionalstringmax length 60
forwardingAgent.address.cityrequiredstringmin length 1 · max length 30
forwardingAgent.address.staterequiredstringmin length 2 · max length 2
forwardingAgent.address.ziprequiredstring
portOfExportrequiredstringSchedule D port code (4 to 5 characters). See GET /v1/aes/reference/ports min length 4 · max length 5
portOfUnladingrequiredstringSchedule K port code (4 to 5 characters) min length 4 · max length 5
countryOfUltimateDestinationrequiredstringISO 3166-1 alpha-2 country of ultimate destination. Embargoed destinations are flagged; see GET /v1/aes/reference/embargoed-countries min length 2 · max length 2
modeOfTransportrequiredstringMode of transport code: 10 vessel, 20 rail, 30 truck, 40 air, 50 mail, 60 pipeline, 70 passenger. See GET /v1/aes/reference/transport-modes
carrierIdentificationoptionalstringSCAC code, 2 to 4 uppercase letters. Required for air shipments
conveyanceNameoptionalstringmax length 30
dateOfExportrequiredstringDate of export, YYYY-MM-DD
relatedPartyTransactionrequiredboolean
routedExportTransactionrequiredboolean
hazardousMaterialsrequiredboolean
filingTyperequiredstringpredeparture or postdeparture one of "predeparture", "postdeparture"
inBondCodeoptionalstringIn-bond code: 36, 37, 67, 68 or 70. See GET /v1/aes/reference/in-bond-codes
entryNumberoptionalstringmax length 15
ftzIdentifieroptionalstringmax length 6
shipperReferenceoptionalstringmax length 30
stateOfOriginoptionalstringmin length 2 · max length 2
commoditiesrequiredarray of objectmin 1 items · max 99 items
commodities[].scheduleBNumberrequiredstringTen-digit Schedule B number, digits only
commodities[].descriptionrequiredstringmin length 1 · max length 2500
commodities[].quantity1requirednumbermin 0
commodities[].unitOfMeasure1requiredstringmin length 1 · max length 5
commodities[].quantity2optionalnumbermin 0
commodities[].unitOfMeasure2optionalstringmax length 5
commodities[].shippingWeightKgrequirednumbermin 0
commodities[].valuerequirednumbermin 0
commodities[].exportInformationCoderequiredstringExport information code, for example OS. See GET /v1/aes/reference/export-info-codes
commodities[].eccnoptionalstringECCN such as EAR99 or 5A002
commodities[].licenseTyperequiredstringLicense code, for example C33 (no licence required). See GET /v1/aes/reference/license-types
commodities[].licenseNumberoptionalstringmax length 40
commodities[].licenseValueoptionalnumbermin 0
commodities[].originStaterequiredstringTwo-letter US state of origin min length 2 · max length 2
commodities[].dfIndicatorrequiredstringone of "D", "F"
commodities[].vehicleIdNumberoptionalstringmax length 25
commodities[].ddtcRegistrationNumberoptionalstringmax length 15
commodities[].ddtcSignificantMilitaryEquipmentoptionalboolean
commodities[].eligiblePartyCertificationoptionalboolean
exemptionCodeoptionalstring
webhookoptionalobjectOptional. Receive filing.accepted (with the ITN), filing.rejected and filing.stalled (an AESDirect handoff started over two hours ago with no result) events at this URL, signed with HMAC-SHA256 in the X-ComplianceGrid-Signature header (t=<unix>,v1=<hex> over "<t>.<raw body>"). If you send no secret, one is generated and returned once as data.webhookSigningSecret.
webhook.urlrequiredstringHTTPS URL. Private and internal addresses are refused. max length 2000 · format uri
webhook.secretoptionalstringYour own signing secret. min length 16 · max length 200

Response fields

The spec does not describe this response yet, and there is no captured example. Run the request with your sandbox key to see its shape.

Errors

  • 400 invalid request
  • 401 missing or bad key
  • 403 not in your plan
  • 429 rate limited, see Retry-After
  • 402 payment required
  • 5xx retry with backoff

Error bodies and codes are described in Error codes and troubleshooting.