# Regions and data residency

Choose a regional base URL so your PDFs are processed where your compliance and data-residency rules require.

Every PDF Blocks action runs in the region you address. Pick a base URL and your
document is processed there and nowhere else. Choosing a region is as simple as
swapping the host in the URL — every region runs the full catalog of 17 actions,
with the same uptime.

## Regional endpoints

Send your request to the base URL for the region you want to process in.

| Region         | Base URL                          |
| -------------- | --------------------------------- |
| Global         | `https://api.pdfblocks.com`       |
| United States  | `https://us.api.pdfblocks.com`    |
| US HIPAA       | `https://hipaa.api.pdfblocks.com` |
| European Union | `https://eu.api.pdfblocks.com`    |
| United Kingdom | `https://uk.api.pdfblocks.com`    |
| Canada         | `https://ca.api.pdfblocks.com`    |
| Australia      | `https://au.api.pdfblocks.com`    |
| Japan          | `https://jp.api.pdfblocks.com`    |
| India          | `https://in.api.pdfblocks.com`    |
| Brazil         | `https://br.api.pdfblocks.com`    |

Every region above is live, serves the complete action catalog, and is backed by
the same uptime commitment. The **Global** endpoint routes each request to nearby
infrastructure for the lowest latency; the named regional endpoints pin
processing to a specific jurisdiction.

## Region availability by plan

Which regions you can address depends on your plan:

- **Free** — Global.
- **Starter** — Global, US, and Europe.
- **Business** — every region above.

See [pricing](/pricing) for the full breakdown.

## What "processing stays in region" means

A request sent to a regional base URL is processed entirely within that region.
Your upload is received, transformed, and returned by infrastructure in that
jurisdiction — it does not travel elsewhere to be processed.

Because the API is **stateless**, there is nothing to store: your document exists
only in memory for the lifetime of the request. Once the response is streamed
back, the input and output are gone — there is no bucket, database, or queue that
retains your files after the call completes. Data residency therefore comes down
to a single decision: which host you send the request to.

## The US HIPAA endpoint

`https://hipaa.api.pdfblocks.com` is a United States endpoint operated for
workflows that handle protected health information (PHI) under HIPAA. Route
requests here when your compliance program requires PDF processing to run in a
HIPAA-aligned environment. Like every region, it is stateless and runs the full
action catalog.

## Choosing a region

Pick the region that matches where your data is allowed to be processed:

- **Global** — the default. Best latency, no residency constraint.
- **European Union** (`eu.`) — keep processing within the EU for GDPR and other
  EU data-residency requirements.
- **United Kingdom** (`uk.`) — keep processing within the UK.
- **United States** (`us.`) and **US HIPAA** (`hipaa.`) — process in the US, with
  the HIPAA endpoint for PHI workflows.
- **Canada** (`ca.`), **Australia** (`au.`), **Japan** (`jp.`),
  **India** (`in.`), and **Brazil** (`br.`) — process within that country to
  satisfy local data-residency rules.

If your requirement is simply "keep this in region X," send every request to that
region's host and you are done.

## Switching regions

Switching regions is a one-line change: keep the path, the parameters, and your
API key exactly the same, and change only the host. The example below runs
[Add a text watermark](/docs/api/add-text-watermark-to-pdf) in the EU instead of
Global.

```bash title="cURL"
# Global
curl https://api.pdfblocks.com/v1/add_text_watermark \
  -H 'X-API-Key: your_api_key' \
  -F file=@input.pdf \
  -F line_1='CONFIDENTIAL' \
  -o watermarked.pdf

# European Union — same request, EU host
curl https://eu.api.pdfblocks.com/v1/add_text_watermark \
  -H 'X-API-Key: your_api_key' \
  -F file=@input.pdf \
  -F line_1='CONFIDENTIAL' \
  -o watermarked.pdf
```

Your [API key](/docs/api/authentication) works on every region — there are no
per-region keys to manage. See
[Requests and responses](/docs/api/requests-and-responses) for the shape every
call shares.

## More regions

Need a region that isn't listed? Additional regions can be provisioned on
request, each with its own regional endpoint and the same full catalog. Reach out
through [Support and status](/docs/api/support-and-status) with your requirement.
