> For the complete documentation index, see [llms.txt](https://docs.terminal.africa/tship/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.terminal.africa/tship/address.md).

# Addresses

The Addresses API allows you to create and manage pickup and delivery locations.

### Sender address verification (NIN)

Some carriers require a **NIN-verified pickup (sender) address** before a shipment can be booked.

#### How it works

1. Create or update an address and optionally pass an 11-digit Nigerian `nin`.
2. Terminal verifies the NIN with our identity provider and checks that the address `first_name` and `last_name` match the name on the NIN.
3. On success, the address is marked `verified: true`. The NIN is **never returned** in API responses.
4. If you use the same NIN again for another address on your account (with matching names), the existing identity is reused. A wallet charge still applies for that verification.

#### Rules

* `nin` is **write-only** (create / update of an unverified address). It is not included in responses.
* Once an address is `verified`, you **cannot** pass `nin`, `first_name`, or `last_name` on update.
* You can also verify an existing unverified address with [Verify Address](/tship/address/verify-address.md).

#### Booking

When getting rates, check `requires_sender_verification` on the rate (and carrier).\
If it is `true` and the pickup address is not `verified`, arranging the shipment will fail with an error asking you to verify the pickup address with NIN.

### The Address Object

This section describes the different attributes available for an address.

| address\_id     | *string*       | Unique reference for address.                                                                                           |
| --------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------- |
| city            | *string*       | Valid address [city](/tship/miscallaneous/cities.md).                                                                   |
| coordinates     | *object*       | Geo coordinates for address.                                                                                            |
| coordinates.lat | *number*       | Latitude for address coordinates                                                                                        |
| coordinates.lng | *number*       | Longitude for address coordinates                                                                                       |
| country         | *string*       | ISO 2 [country](/tship/miscallaneous/countries.md) code for address. e.g. NG                                            |
| email           | *string*       | Email of person at address.                                                                                             |
| first\_name     | *string*       | First name of person at address.                                                                                        |
| is\_residential | *boolean*      | Indicates if address is a residential address or not.                                                                   |
| last\_name      | *string*       | Last name of person at address.                                                                                         |
| line1           | *string*       | Street address.                                                                                                         |
| line2           | *string*       | Second line of street address.                                                                                          |
| metadata        | *object*       | Provide additional information for an address.                                                                          |
| name            | *string*       | Full name of person at address.                                                                                         |
| phone           | *string*       | International phone number for person at address. Must match country provided.                                          |
| place\_id       | *string*       | Unique google place id for address location.                                                                            |
| state           | *string*       | Valid address [state](/tship/miscallaneous/states.md).                                                                  |
| zip             | *string*       | Zip / Postal code for address.                                                                                          |
| verified        | boolean        | Whether this address has completed NIN sender verification.                                                             |
| verified\_at    | datetime       | When NIN verification completed. `null` if not verified.                                                                |
| identity        | object \| null | Linked verified identity details (names from verification)                                                              |
| nin             | string         | Write-only. Optional 11-digit Nigerian NIN used to verify the address on create or update. Never returned in responses. |
| created\_at     | *datetime*     | Time address created.                                                                                                   |
| updated\_at     | *datetime*     | Time address last updated.                                                                                              |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.terminal.africa/tship/address.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
