# API de configuración de la aplicación

## configureApplication para iOS

Configura la plataforma iOS para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| -------------------------- | ------- |--------------------------------------------------|
| auth | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh |
| application | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type | integer | Debe ser 1 para iOS |
| ios\_key\_management\_type | string | "manual" |
| ios\_key\_file | string | Contenido del archivo de clave de iOS codificado en Base64 |
| ios\_key\_password | string | Contraseña para el archivo de clave de iOS |
| ios\_gateway | integer | "0" para sandbox, "1" para producción |
| ios\_framework | string | Valores posibles: "native", "cordova", "titanium" |


<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": true,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>


```json title="Ejemplo"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",      // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",        // requerido. Código de aplicación de Pushwoosh
    "device_type": 1,                    // requerido. 1 para iOS
    "ios_key_management_type": "manual", // requerido. "manual"
    "ios_key_file": "MIIMY...BAQ==",     // requerido. contenido del archivo de clave de iOS codificado en base64
    "ios_key_password": "password",      // requerido.
    "ios_gateway": 1,                    // requerido. "0" (sandbox) | "1" (producción)
    "ios_framework": "native"            // requerido. valores posibles: "native", "cordova", "titanium",
                                         //           "marmalade", "adobeAir", "corona", "xamarin",
                                         //           "phoneGapBuild", "triggerIO", "unity"
  }
}


```

## configureApplication para Android

Configura la plataforma Android para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| ---------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde su Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 3 para Android. |
| android\_framework\* | string | Framework de Android. Valores posibles: native, cordova, marmalade, adobeAir, corona, xamarin, phoneGapBuild, triggerIO, titanium, unity. |
| android\_fcm\_service\_account\* | object | Clave de cuenta de servicio de FCM (archivo JSON generado en la configuración del proyecto de Firebase). |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": true,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



<Tabs>
<TabItem label="Ejemplo">
```json
{
  "request": {
    "auth": "Z2PLR....IRwTqHwCr",
    "application": "87E33-XXXXX",
    "device_type": 3,
    "android_fcm_service_account": {
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "client_email": "****@foobar.iam.gserviceaccount.com",
      "client_id": "115********6584854983",
      "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-zffgu%40foobar.iam.gserviceaccount.com",
      "private_key": "-----BEGIN PRIVATE KEY-----\nuH/OU/fIL+i6Wm8as...\n-----END PRIVATE KEY-----\n",
      "private_key_id": "e3749********6d9",
      "project_id": "app-android",
      "token_uri": "https://oauth2.googleapis.com/token",
      "type": "service_account",
      "universe_domain": "googleapis.com"
    },
    "android_framework": "native"
  }
}

```
</TabItem>
</Tabs>

## configureApplication para Mac OS X

Configura la plataforma Mac OS X para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| -------------------------------------------------------------- | ------- | --------------------------------------------------- |
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 7 para Mac OS X. |
| macos\_key\_management\_type\* | string | Actualmente solo está disponible el tipo "manual". |
| macos\_cert\_file | string | Contenido del archivo de certificado de Mac OS X codificado en Base64. |
| macos\_key\_file | string | Contenido del archivo de clave de Mac OS X codificado en Base64. |
| macos\_key\_password | string | Contraseña del archivo de clave. |
| macos\_gateway\* | integer | Gateway de push. "0" para sandbox, "1" para producción. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": true,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



```json title="Ejemplo"
{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H",                   // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",                     // requerido. Código de aplicación de Pushwoosh
    "device_type": 7,                                 // requerido. 7 para Mac OS X
    "macos_key_management_type": "manual",            // requerido. "manual" 
    "macos_cert_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // opcional. Contenido codificado en Base64 del archivo de certificado de Mac OS X 
    "macos_key_file": "iVBORw0KGgoAAAANSUhEUgAABB…",  // opcional. Contenido codificado en Base64 del archivo de clave de Mac OS X 
    "macos_key_password": "PASSWORD",                 // opcional. Contraseña del archivo de clave 
    "macos_gateway": 1                                // requerido. gateway de push. "0" para sandbox o "1" para producción 
  }
}
```

## configureApplication para Windows

Configura las plataformas de Windows para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| ---------------------------------------------- | ------- | ------------------------------------------------------------------------------------- |
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 8 para Windows. |
| wns\_psid\* | string | Identificador de seguridad del paquete de la Tienda Windows para la aplicación. Comienza con "ms-app://". |
| wns\_secret\* | string | Secreto del cliente de la Tienda Windows para la aplicación. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": true
    }
  }
}
```
</TabItem>
</Tabs>



```json title="Ejemplo"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",  // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",    // requerido. Código de aplicación de Pushwoosh
    "device_type": 8,                // requerido. 8 para Windows
    "wns_psid": "ms-app://…",        // requerido. identificador de seguridad del paquete de la aplicación desde la Tienda Windows
    "wns_secret": "CLIENT_SECRET"    // requerido. secreto de cliente de Windows 
  }
}


```

## configureApplication para Amazon

Configura la plataforma Amazon para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| ------------------------------------------------ | ------- | -------------------------------------------------------------- |
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 9 para Amazon. |
| adm\_cid\* | string | ID de cliente de Amazon. |
| adm\_secret\* | string | Secreto de cliente de Amazon. |
| adm\_framework\* | string | Framework de Amazon. Valores posibles: _native, unity, adobeAir._ |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": true,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



```json title="Ejemplo"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",  // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",    // requerido. Código de aplicación de Pushwoosh
    "device_type": 9,                // requerido. 9 para Amazon
    "adm_cid": "CLIENT_ID",          // requerido. ID de cliente de Amazon
    "adm_secret": "CLIENT_SECRET",   // requerido. Secreto de Cliente de Amazon
    "adm_framework": "native"        // requerido. valores posibles: native, unity, adobeAir. 
  }
}
```

## configureApplication para Chrome

Configura la plataforma Chrome para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción | Requerido |
|------------------------------|---------|-----------------------------------------------------------------------------------------------------|----------|
| auth* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. | Requerido |
| application* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) | Requerido |
| device_type* | integer | Debe ser 11 para Chrome. | Requerido |
| chrome_fcm_service_account* | object | Clave de cuenta de servicio de FCM (archivo JSON generado en la configuración del proyecto de Firebase). | Requerido |
| chrome_vapid_key* | string | Clave VAPID pública (Voluntary Application Server Identification) utilizada para la autenticación de notificaciones push en Chrome. | Requerido |
| chrome_vapid_private_key* | string | Clave VAPID privada utilizada para firmar y enviar notificaciones push en Chrome. | Requerido |


```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": true,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```



<Tabs>
<TabItem label="Ejemplo">
```json
{
  "request": {
    "auth": "Z2PLR....IRwTqHwCr",
    "application": "87E33-XXXXX",
    "device_type": 11,
    "chrome_fcm_service_account": {
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "client_email": "****@foobar.iam.gserviceaccount.com",
      "client_id": "11529......6584854983",
      "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/****foobar.iam.gserviceaccount.com",
      "private_key": "-----BEGIN PRIVATE KEY-----\nuH/OU/fIm8as...\n-----END PRIVATE KEY-----\n",
      "private_key_id": "e3749......e66d9",
      "project_id": "app-chrome",
      "token_uri": "https://oauth2.googleapis.com/token",
      "type": "service_account",
      "universe_domain": "googleapis.com"
    },
    "chrome_vapid_key": "BEr....KPqQvCbU",
    "chrome_vapid_private_key": "ee....flOqmSo"
  }
}

```
</TabItem>
</Tabs>

## configureApplication para Safari

Configura la plataforma Safari para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| --------------------------------------------------------------- | ------- |-------------------------------------------------|
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 10 para Safari. |
| safari\_key\_management\_type\* | string | Actualmente solo está disponible el tipo "manual". |
| safari\_website\_name | string | Nombre del sitio web. |
| safari\_allowed\_domains | array | Ej: https://site1.com", https://site2.com" |
| safari\_url\_template\* | string | Plantilla de URL de Safari con el formato "https://%@". |
| safari\_icon\_file | string | Contenido codificado en Base64 de un archivo png de 256x256px. |
| safari\_key\_file\* | string | Contenido del archivo de clave .p12 de Safari codificado en Base64. |
| safari\_key\_password | string | Contraseña para el archivo de clave. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": true,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



```json title="Ejemplo"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",                    // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",                      // requerido. Código de aplicación de Pushwoosh
    "device_type": 10,                                 // requerido. 10 para Safari
    "safari_key_management_type": "manual",            // requerido. "manual"
    "safari_website_name": "WEBSITE_NAME",             // opcional.
    "safari_allowed_domains": [                        // opcional.
      "https://site1.com",
      "https://site2.com"
    ],
    "safari_url_template": "https://%@",               // requerido.
    "safari_icon_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // opcional. Contenido codificado en Base64 de un archivo png de 256x256px
    "safari_key_file": "MIIMY...BAQ==",                // requerido. contenido del archivo de clave .p12 de Safari codificado en base64
    "safari_key_password": "PASSWORD"                  // opcional. Contraseña para el archivo de clave anterior  
  }
}


```

## configureApplication para Firefox

Configura la plataforma Firefox para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción | Requerido |
|-------------------------------|---------|-------------------------------------------------------------------------------------------------------|----------|
| auth* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. | Requerido |
| application* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) | Requerido |
| device_type* | integer | Debe ser 12 para Firefox. | Requerido |
| firefox_is_enabled | boolean | Habilita las notificaciones push para Firefox. | Opcional |
| firefox_fcm_service_account* | object | JSON generado en la configuración del proyecto de Firebase. | Requerido |
| firefox_vapid_key* | string | Clave VAPID pública (Voluntary Application Server Identification) utilizada para la autenticación de notificaciones push en Firefox. | Requerido |
| firefox_vapid_private_key* | string | Clave VAPID privada utilizada para firmar y enviar notificaciones push en Firefox. | Requerido |


<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": false,
      "firefox": true,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



<Tabs>
<TabItem label="Ejemplo">
```json
{
  "request": {
    "auth": "Z2PLR....IRwTqHwCr",
    "application": "87E33-XXXXX",
    "device_type": 12,
    "firefox_fcm_service_account": {
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "client_email": "****@foobar.iam.gserviceaccount.com",
      "client_id": "115........6584854983",
      "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/****@foobar.iam.gserviceaccount.com",
      "private_key": "-----BEGIN PRIVATE KEY-----\n****uH/OU/fILL****fMJZ+i6****um8as.....\n-----END PRIVATE KEY-----\n",
      "private_key_id": "e3........8e66d9",
      "project_id": "app-firefox",
      "token_uri": "https://oauth2.googleapis.com/token",
      "type": "service_account",
      "universe_domain": "googleapis.com"
    },
    "firefox_vapid_key": "BEr....KPqQvCbU",
    "firefox_vapid_private_key": "ee....flOqmSo"
  }
}

```
</TabItem>
</Tabs>

## configureApplication para Email

Configura la plataforma de Email para la aplicación.

`POST` `https://api.pushwoosh.com/json/1.3/configureApplication`


#### Cuerpo de la solicitud

| Nombre | Tipo | Descripción |
| ---------------------------------------------------- | ------- | --------------------------------------------------------- |
| auth\* | string | [Token de acceso a la API](/es/developer/api-reference/api-identifiers/#api-access-token) desde el Panel de Control de Pushwoosh. |
| application\* | string | [Código de aplicación de Pushwoosh](/es/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | Debe ser 14 para Email. |
| email\_from\_email\* | string | Dirección de correo electrónico del remitente. Debe ser válida y estar verificada. |
| email\_from\_name\* | string | Nombre del remitente. |
| email\_reply\* | string | Dirección de correo electrónico para responder. Debe ser válida y estar verificada. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "providers": {
      "ios": false,
      "amazon": false,
      "android": false,
      "baidu_android": false,
      "chrome": false,
      "email": true,
      "firefox": false,
      "huawei_android": false,
      "internet_explorer": false,
      "osx": false,
      "safari": false,
      "sms": false,
      "web": false,
      "whats_app": false,
      "windows": false
    }
  }
}
```
</TabItem>
</Tabs>



```json title="Ejemplo"
{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H",         // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
    "application": "XXXXX-XXXXX",           // requerido. Código de aplicación de Pushwoosh
    "device_type": 14,                      // requerido. 14 para email
    "email_from_email": "email@domain.com", // requerido. La dirección de correo electrónico debe ser válida y estar verificada
    "email_from_name": "SENDER_NAME",       // requerido. Nombre a mostrar en el campo "De" del correo electrónico
    "email_reply": "email@domain.com"       // requerido. La dirección de correo electrónico para responder debe ser válida y estar verificada
  }
}
```