---
title: "Crear una dirección de usuario | Documentación de Ordering.co"
description: "Usa POST /users/{user_id}/addresses para crear una dirección para un usuario."
canonical: https://docs.ordering.co/es/api-reference/guides/add-user-address/
---

# Crear una dirección de usuario

> **API operation:** [Abrir la operación en la Referencia de la API](https://docs.ordering.co/es/api-reference/#tag/users/POST/users/{user_id}/addresses)

Usa `POST /users/{user_id}/addresses` para crear una dirección para un usuario. La operación pública actual es `Address.register`.

El comportamiento descrito requiere autenticación. Los administradores y agentes pueden actuar en nombre de otro usuario; el `user_id` de los demás solicitantes autenticados debe coincidir con el de la ruta. La operación obtiene de la ruta el usuario que se almacenará. Cuando `default` es true, se quita la marca predeterminada de las demás direcciones de ese usuario.

```javascript
const response = await ordering.users(userId).addresses(addressData).save();
```

Esta sintaxis del SDK es histórica. Confirma el paquete y la versión antes de usarla. Consulta el [modelo de dirección de usuario](https://docs.ordering.co/es/api-reference/guides/addresses-model/) para conocer campos representativos.

## Referencia de OpenAPI

**Operación:** `POST /users/{user_id}/addresses`

**Parámetros de ruta**

| Nombre    | Tipo    | Obligatorio | Descripción |
| --------- | ------- | ----------- | ----------- |
| `user_id` | integer | Sí          | —           |

**Parámetros de encabezado**

| Nombre          | Tipo   | Obligatorio | Descripción |
| --------------- | ------ | ----------- | ----------- |
| `X-Socket-Id-X` | string | No          | —           |

**Campos del cuerpo de la solicitud**

| Nombre            | Tipo    | Obligatorio |
| ----------------- | ------- | ----------- |
| `address`         | any     | No          |
| `address_notes`   | any     | No          |
| `cellphone`       | any     | No          |
| `city`            | any     | No          |
| `country`         | any     | No          |
| `country_code`    | any     | No          |
| `default`         | boolean | No          |
| `external_id`     | any     | No          |
| `internal_number` | any     | No          |
| `lastname`        | any     | No          |
| `locality`        | any     | No          |
| `location`        | string  | No          |
| `middle_name`     | any     | No          |
| `name`            | any     | No          |
| `neighborhood`    | any     | No          |
| `phone`           | any     | No          |
| `route`           | any     | No          |
| `second_lastname` | any     | No          |
| `state`           | any     | No          |
| `state_code`      | any     | No          |
| `street_number`   | any     | No          |
| `sublocality`     | any     | No          |
| `user_id`         | number  | Sí          |
| `zipcode`         | any     | No          |

**Respuestas**

| Código | Descripción                                                                                                                                                                                                                                                                             |
| ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 200    | Respuesta exitosa. El contenido de `result` varía según la operación y se devuelve como JSON.                                                                                                                                                                                           |
| 400    | Respuesta de error (error=true). Los errores de validación y de negocio comparten este código.                                                                                                                                                                                          |
| 401    | Envelope de error: sesión ausente, inválida, o nivel de usuario fuera de los permitidos. Respuesta de error para el código declarado por la operación. Consulta `result` para ver los detalles disponibles. Envelope de error: el proyecto no existe o no tiene una suscripción activa. |
| 404    | Respuesta vacía: la versión de API solicitada no está admitida.                                                                                                                                                                                                                         |
| 429    | Envelope de error: se excedió un límite de consumo del proyecto (o el sujeto está baneado). Lleva Retry-After y X-RateLimit-Limit/Remaining/Reset/Scope/Key.                                                                                                                            |
| 500    | Respuesta de error: falló la búsqueda o inicialización del proyecto.                                                                                                                                                                                                                    |
| 503    | Envelope de error: la aplicación está temporalmente en mantenimiento. Envelope de error: el proyecto está temporalmente en mantenimiento, o los límites de consumo no se pudieron evaluar y el límite aplicable está configurado con on\_error = closed (cabecera Retry-After: 1).      |

[Abrir esta operación en la Referencia de la API](https://docs.ordering.co/es/api-reference/#tag/users/POST/users/{user_id}/addresses)
