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

# Attachments

<Warning>
  **Pardon the mess**

  You are viewing docs related to an older version of Sequin. We're in the process of updating our provider-specific guides and will be done in a few weeks (May 2024). [Please click here](/) to view the latest version of the docs.

  If you're interested in Airtable and want to learn more about what's changing, [send us a note](mailto:support@sequin.io).
</Warning>

## Sequin Proxy URLs for Airtable attachments[](#sequin-proxy-urls-for-airtable-attachments "Direct link to Sequin Proxy URLs for Airtable attachments")

You might have already noticed `https://proxy.sequin.io/attachment/*` URLs in your Sequin database. While Airtable's attachment URLs expire every two hours,[1](#fn-1) these proxy URLs do not expire.

## Resolving attachment URLs[](#resolving-attachment-urls "Direct link to Resolving attachment URLs")

Authenticate requests for attachments through Sequin's proxy according to [Airtable's API Authentication guidelines](https://airtable.com/developers/web/api/authentication), providing your Airtable personal access token:

```bash theme={null}
$ curl https://proxy.sequin.io/attachment/▒▒▒▒▒▒▒▒▒ \
  -H "Authorization: Bearer key▒▒▒▒▒▒▒▒▒"

```

A successful request receives a [302 Found redirect](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/302) to the attachment's Airtable-provided temporary address.

<Warning>Because resolving a current expiring URL requires retrieving the attachment's parent record, **each request will consume an API call from your quota**.</Warning>

Because this impacts the general availability of attachments, and because your Airtable account API token is secret, this behavior may be unsuitable for some applications — e.g. embedding attachments in a public static page. Airtable discourages using their system as a CDN.[2](#fn-2)

### Common issues[](#common-issues "Direct link to Common issues")

* A `401 Not Authorized` response indicates Sequin couldn't find an `Authorization` header in your request.
* A `403 Forbidden` error indicates the provided key lacks API access to the Airtable record with the requested attachment.

If you're having trouble using attachment URLs, [send us a note!](mailto:support@sequin.io) Please include a valid attachment URL from your sync table and a description of how you're making requests.

## How attachment URLs work[](#how-attachment-urls-work "Direct link to How attachment URLs work")

Each proxy attachment URL:

1. Requires you provide an Airtable `Bearer` token in your requests.
2. Uses that `Bearer` token to fetch an expiring attachment URL from Airtable.
3. Responds to you request with a `302 Found` redirect to the expiring URL.

If you change an attachment in Airtable, the change in Airtable's unique attachment ID (of the form `att▒▒▒▒▒▒▒▒▒▒▒▒▒▒`) leads Sequin to update the proxy URL in the corresponding Postgres row.

<img src="https://mintcdn.com/sequin/zMOdbu_A_Ep0dl56/images/new-attachments-6d0d66ddf34239b0823154b0cdaa36cd.png?fit=max&auto=format&n=zMOdbu_A_Ep0dl56&q=85&s=2c7b1ab1f18ccbde8ef6cc8796ee679b" alt="Diagram of how Sequin's proxy URLs for Airtable attachments work." width="1104" height="552" data-path="images/new-attachments-6d0d66ddf34239b0823154b0cdaa36cd.png" />

<Warning>Like Airtable, we do not consider the attachment URL formatting part of our compatibility surface, so users should not attempt to parse or interpret attachment field URLs.</Warning>

***

1. [Changes to Airtable attachments.](https://support.airtable.com/docs/changes-to-airtable-attachments). From "What's changing:"

> Any attachment URLs obtained via the Airtable Web API and the CSV export functionality will expire after a few hours.\
> [↩](#fnref-1)

2. ["Changes to Airtable attachments."](https://support.airtable.com/docs/changes-to-airtable-attachments) From the FAQ:

> **I use APIs to obtain an URL to an Airtable attachment, and this usage is integrated with other tools, e.g. Zapier. It seems the URLs will expire. What should I do?**
>
> If you or a third party integration are using API processes to obtain attachment URLs from Airtable, then it’s important to note that the URLs obtained will only be active for a short period of time (\~2 hours). Using Airtable as a CDN has been and continues to be discouraged in line with this change.\
> [↩](#fnref-2)
