## URL de la API

La URL a la que se envían las solicitudes HTTP:

```url
https://portal.bulkgate.com/api/1.0/simple/promotional
```

> [!NOTE]
> Si la solicitud no llega a su destino, repítala en el [servidor de respaldo](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/servidor-de-respaldo/) `backup1.bulkgate.com`.

## Métodos HTTP admitidos

- `GET`
- `POST` - `application/x-www-form-urlencoded`
- `POST` - `application/json`

Consulte los [métodos de la petición](https://www.bulkgate.com/es/documentacion/simple-api/simple-promocional-metodos/) para ver ejemplos de cada uno.

## Tabla de parámetros

| NOMBRE DEL PARÁMETRO | VALOR | OBLIGATORIO | VALOR PREDETERMINADO |
|:------------------|:------|:------------|:---------------------|
| application_id    | [Identificador de la aplicación](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/administracion-api/) | **Sí** | - |
| application_token | [Token de autenticación de la aplicación](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tokens-de-api/) | **Sí** | - |
| number            | Números de los destinatarios separados por `;` (punto y coma) | **Sí** | - |
| text              | Texto del mensaje SMS (máx. 612 caracteres, o 268 caracteres si se utiliza Unicode), codificación UTF-8 | **Sí** | - |
| unicode           | `Yes`/`true`/`1` para SMS Unicode, `no`/`false`/`0` para SMS de 7 bits | No | `false` |
| sender_id         | ID de remitente, consulte [tipo de ID de remitente](#tipo-de-id-de-remitente-sender-id) | No | `gSystem` |
| sender_id_value   | Valor del remitente - `gOwn` (p. ej. "420 777 777 777"), `gText` (p. ej. "BulkGate"), `gProfile` (p. ej. "423"), `gMobile` o `gPush` [(KEY)](https://www.bulkgate.com/es/centro-de-ayuda/mobile-connect/instalacion-de-mobile-connect/) | | |
| country           | Indique los números de los destinatarios en formato internacional (con prefijo, p. ej. `420`) o añada el [código de país](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) (`775123456` + `CZ` = `420775123456`). Consulte el ejemplo de solicitud con país. Si es **`null`**, se utilizará la zona horaria que tenga configurada para completar la información | No | `null` |
| schedule          | Programe la fecha y la hora de envío como [marca de tiempo Unix](https://en.wikipedia.org/wiki/Unix_time) o en [ISO 8601.](https://en.wikipedia.org/wiki/ISO_8601) Consulte los ejemplos a continuación. El valor `now` envía el mensaje de inmediato, igual que si se omite el parámetro. | No | Ahora |
| duplicates_check  | Seleccione **`on`** para evitar el envío de mensajes duplicados al mismo número de teléfono. Los mensajes con el mismo texto enviados al mismo número se eliminarán. Con **`off`** no se elimina ningún duplicado. Los duplicados se eliminan **solo dentro de un mismo lote**, no entre distintas solicitudes. | No | `off` |
| tag               | Etiqueta del mensaje para que el usuario pueda recuperarlo posteriormente. | No | - |

### Tipo de ID de remitente `sender_id`

| VALOR      | DESCRIPCIÓN                                                          |
|:-----------|:---------------------------------------------------------------------|
| `gSystem`  | Número del sistema                                                   |
| `gShort`   | Código corto                                                         |
| `gText`    | Remitente de texto                                                   |
| `gMobile`  | [Mobile Connect](https://www.bulkgate.com/es/centro-de-ayuda/mobile-connect/instalacion-de-mobile-connect/)                |
| `gPush`    | Mobile Connect push - Envía una notificación a la aplicación Mobile Connect |
| `gOwn`     | Número propio (requiere la verificación del número)                  |
| `gProfile` | [ID del perfil de BulkGate](https://www.bulkgate.com/es/centro-de-ayuda/sms/perfil-de-remitente/)          |
| `<int>`    | ID del perfil de BulkGate                                            |

## Ejemplos de solicitud

**Ejemplo de solicitud completa:**

```url
https://portal.bulkgate.com/api/1.0/simple/promotional
    ?application_id=451
    &application_token=NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj
    &number=420777777777;420775123456;606123456
    &text=test_sms
    &unicode=yes
    &sender_id=gText
    &sender_id_value=BulkGate
    &country=cz
    &schedule=2018-05-14T18:30:00-01:00
```

**Ejemplo de solicitud con país:**

```url
https://portal.bulkgate.com/api/1.0/simple/promotional
    ?application_id=451
    &application_token=NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj
    &number=606123456;420777777777
    &text=test_sms
    &country=cz
```

**Ejemplo de solicitud con ISO 8601:**

```url
https://portal.bulkgate.com/api/1.0/simple/promotional
    ?application_id=451
    &application_token=NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj
    &number=420775123456;420606123456
    &text=test_sms
    &schedule=2018-05-14T18:30:00-01:00
```

**Ejemplo de solicitud con marca de tiempo Unix:**

```url
https://portal.bulkgate.com/api/1.0/simple/promotional
    ?application_id=451
    &application_token=NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj
    &number=420775123456;420606123456
    &text=test_sms
    &schedule=1526992636
```

**Ejemplo de solicitud POST JSON:**

```http-json
POST /api/1.0/simple/promotional HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
    "application_id": 451,
    "application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
    "number": "420777777777;420775123456;606123456",
    "text": "test_sms",
    "unicode": true,
    "sender_id": "gText",
    "sender_id_value": "BulkGate",
    "country": "cz",
    "schedule": "2018-05-14T18:30:00-01:00"
}
```

## Respuesta

**En caso de éxito:**

```json
{
  "data": {
    "total": {
      "status": {
        "sent": 0,
        "accepted": 0,
        "scheduled": 2,
        "error": 1
      }
    },
    "response": [
      {
        "status": "scheduled",
        "sms_id": "idfkvqrp-0",
        "part_id": [
                    "idfkvqrp-0_1",
                    "idfkvqrp-0_2",
                    "idfkvqrp-0"
                ],
        "number": "420775123456"
      },
      {
        "status": "scheduled",
        "sms_id": "idfkvqrp-1",
        "part_id": [
                    "idfkvqrp-1_1",
                    "idfkvqrp-1_2",
                    "idfkvqrp-1"
                ],
        "number": "420606123456"
      },
      {
        "status": "error",
        "code": 9,
        "error": "Invalid phone number",
        "number": "44771447678"
      }
    ]
  }
}
```

Donde:

- **part_ID** es el array de ID de las partes del mensaje largo original, que se dividió porque superaba el límite de 160 caracteres de un mensaje individual. Más información [aquí](https://www.bulkgate.com/es/centro-de-ayuda/sms/concatenacion-de-mensajes/).

**En caso de error:**

```json
{
    "type": "invalid_phone_number",
    "code": 400,
    "error": "Invalid phone number",
    "detail": null
}
```

```json
{
    "type": "unknown_identity",
    "code": 401,
    "error": "Unknown identity / unauthorized / empty application_id",
    "detail": null
}
```

Donde:

- **type** y **error** (descripción del error) se encuentran en la [tabla de tipos de error](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tipos-de-error/)
- **code** representa el error HTTP
- **detail** es información adicional sobre el error

Consulte todos los tipos de error de Simple API y Advanced API [aquí](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tipos-de-error/).
