# Use the API with Postman

> Import the Ur Next Door Postman collection and environment, store your API key as a secret variable, and send every API request from Postman.

Source: https://docs.urnextdoor.com/integrations/postman/

The docs ship a Postman collection with one request per endpoint, generated from the OpenAPI document, and an environment that holds your key as a secret.

## Step 1: Download the files

- [Collection: urnextdoor-api.postman_collection.json](https://docs.urnextdoor.com/downloads/urnextdoor-api.postman_collection.json)
- [Environment: urnextdoor.postman_environment.json](https://docs.urnextdoor.com/downloads/urnextdoor.postman_environment.json)

## Step 2: Import them

1. In Postman, choose **Import**.
2. Drop both files in, or choose them from disk. You get a collection named **Ur Next Door API**, with folders Account, Content, Media, Scheduling and Lookups, and an environment named **Ur Next Door**.

## Step 3: Add your key to the environment

1. Open **Environments** and select **Ur Next Door**.
2. Paste your key into the **current value** of `apiKey`. It is a **secret** variable, so Postman masks it.
3. Leave `baseUrl` as `https://urnextdoor.com/api/v1`. Save.
4. Select **Ur Next Door** in the environment picker at the top right.

Use the current value rather than the initial value: initial values are shared if you ever share or sync the environment.

## Step 4: Send a request

Open **Account > Who am I** and choose **Send**. You should get `200` with your member and key details.

The collection is already set up so that:

- every request uses **Bearer Token** auth with `{{apiKey}}` (the public OpenAPI request uses no auth),
- requests that change data send `Idempotency-Key: {{$guid}}`, a fresh UUID on each send,
- create requests carry a sample JSON body you can edit,
- **Media > Upload an image** uses **form-data**: pick an image file for the `file` field.

## Alternative: import the OpenAPI URL

Postman can also build a collection straight from the API: **Import**, paste `https://urnextdoor.com/api/v1/openapi.json`, and import it as a collection. You then add the Bearer auth and the variables yourself.

## Tips

- To try a create without publishing, add `"scheduled_at"` a few days ahead, then cancel it with **Scheduling > Cancel a scheduled item**.
- The response headers show `X-RateLimit-Remaining` for creates, so you can watch your quota.
- Pressing **Send** twice on a create posts twice, because `{{$guid}}` changes each time. To test idempotency, replace it with a fixed value.

## Next steps

- [Make your first request](https://docs.urnextdoor.com/getting-started/first-request.md).
- [API reference](https://docs.urnextdoor.com/reference.md) for every field.
- [n8n](https://docs.urnextdoor.com/integrations/n8n.md) or [Zapier](https://docs.urnextdoor.com/integrations/zapier.md) to automate what you tested.
