> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ebrc.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Data Extraction APIs

> Extract structured data from shipping bill and invoice PDFs on the Tradelens platform, returning the fields you need to map remittances and file eBRCs in bulk.

<Warning>
  The Data Extraction APIs are hosted on a separate platform and do not share authentication with the core eBRC APIs. To get a dedicated Tradelens API key, contact [amin@eximfiles.io](mailto:amin@eximfiles.io).
</Warning>

## Overview

The Data Extraction APIs turn export documents into structured JSON. Extract rows from shipping bill PDFs to prepare a [bulk eBRC upload](/api-reference/genebrc/bulk-upload), or pull billing data out of invoice PDFs.

## Base URL

All Data Extraction API requests should be made to:

<CodeGroup>
  ```bash Production theme={"dark"}
  https://tradelens-apis.eximfiles.io/platform
  ```

  ```bash Sandbox theme={"dark"}
  https://tradelens-apis.dev.eximfiles.com/platform
  ```
</CodeGroup>

## Authentication

These endpoints authenticate with a **Tradelens API key**, a separate key from your eBRC API key, sent in the same header style:

```bash theme={"dark"}
x-api-key: <TRADELENS_API_KEY>
accept: application/json
```

## Supported document types

### Shipping bills

Exporter details, consignee information, product descriptions, quantities and values, and shipping details. Two variants: [eBRC-specific fields](/api-reference/extraction/shipping-bills) or the [complete document](/api-reference/extraction/shipping-bills-full).

### Invoices

Vendor and supplier information, line items, amounts and totals, tax information, and payment terms. See [Extract Invoice Data](/api-reference/extraction/invoices).

## Request format

* All requests use `multipart/form-data` encoding
* Upload documents as file attachments
* Supported file format: PDF
* Maximum file size: 5 MB per document

## Response format

Extraction responses are JSON with a `status` and a document-specific `data` object:

```json theme={"dark"}
{
  "status": "success",
  "data": { }
}
```

## Error handling

* `400` - Invalid file format or corrupted document
* `401` - Invalid or missing API key
* `413` - File size exceeds limit
* `422` - Document processing failed
* `429` - Rate limit exceeded
* `500` - Internal processing error

## Related

* [Bulk Upload via Excel](/api-reference/genebrc/bulk-upload) to file what you extracted.
* [Environments and Base URLs](/environments) for all hosts in one place.
* [Errors](/errors) for the core API's error conventions.

## Need help?

<Card title="Contact us" icon="envelope" href="mailto:amin@eximfiles.io">
  For help with Data Extraction APIs, email [amin@eximfiles.io](mailto:amin@eximfiles.io)
</Card>
