# واجهة برمجة تطبيقات تكوين التطبيق

## configureApplication لنظام iOS

يقوم بتكوين منصة iOS للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| -------------------------- | ------- |--------------------------------------------------|
| auth | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh |
| application | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type | integer | يجب أن يكون 1 لنظام iOS |
| ios\_key\_management\_type | string | "manual" |
| ios\_key\_file | string | محتوى ملف مفتاح iOS المشفر بـ Base64 |
| ios\_key\_password | string | كلمة المرور لملف مفتاح iOS |
| ios\_gateway | integer | "0" للبيئة التجريبية (sandbox)، "1" للإنتاج |
| ios\_framework | string | القيم الممكنة: "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="مثال"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",      // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",        // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 1,                    // مطلوب. 1 لنظام iOS
    "ios_key_management_type": "manual", // مطلوب. "manual"
    "ios_key_file": "MIIMY...BAQ==",     // مطلوب. محتوى ملف مفتاح iOS المشفر بـ base64
    "ios_key_password": "password",      // مطلوب.
    "ios_gateway": 1,                    // مطلوب. "0" (sandbox) | "1" (production)
    "ios_framework": "native"            // مطلوب. القيم الممكنة: "native", "cordova", "titanium",
                                         //           "marmalade", "adobeAir", "corona", "xamarin",
                                         //           "phoneGapBuild", "triggerIO", "unity"
  }
}


```

## configureApplication لنظام Android

يقوم بتكوين منصة Android للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| ---------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh الخاصة بك. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 3 لنظام Android. |
| android\_framework\* | string | إطار عمل Android. القيم الممكنة: native, cordova, marmalade, adobeAir, corona, xamarin, phoneGapBuild, triggerIO, titanium, unity. |
| android\_fcm\_service\_account\* | object | مفتاح حساب خدمة FCM (ملف JSON تم إنشاؤه في إعدادات مشروع 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="مثال">
```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 لنظام Mac OS X

يقوم بتكوين منصة Mac OS X للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| -------------------------------------------------------------- | ------- | --------------------------------------------------- |
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 7 لنظام Mac OS X. |
| macos\_key\_management\_type\* | string | النوع "manual" فقط هو المتاح حاليًا. |
| macos\_cert\_file | string | محتوى ملف شهادة Mac OS X المشفر بـ Base64. |
| macos\_key\_file | string | محتوى ملف مفتاح Mac OS X المشفر بـ Base64. |
| macos\_key\_password | string | كلمة مرور ملف المفتاح. |
| macos\_gateway\* | integer | بوابة الإشعارات. "0" للبيئة التجريبية (sandbox)، "1" للإنتاج. |

<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="مثال"
{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H",                   // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",                     // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 7,                                 // مطلوب. 7 لنظام Mac OS X
    "macos_key_management_type": "manual",            // مطلوب. "manual" 
    "macos_cert_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // اختياري. محتوى ملف شهادة Mac OS X المشفر بـ Base64 
    "macos_key_file": "iVBORw0KGgoAAAANSUhEUgAABB…",  // اختياري. محتوى ملف مفتاح Mac OS X المشفر بـ Base64 
    "macos_key_password": "PASSWORD",                 // اختياري. كلمة مرور ملف المفتاح 
    "macos_gateway": 1                                // مطلوب. بوابة الإشعارات. "0" للبيئة التجريبية (sandbox) أو "1" للإنتاج 
  }
}
```

## configureApplication لنظام Windows

يقوم بتكوين منصات Windows للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| ---------------------------------------------- | ------- | ------------------------------------------------------------------------------------- |
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 8 لنظام Windows. |
| wns\_psid\* | string | معرف أمان الحزمة من متجر Windows للتطبيق. يبدأ بـ "ms-app://". |
| wns\_secret\* | string | سر العميل (Client Secret) من متجر Windows للتطبيق. |

<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="مثال"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",  // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",    // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 8,                // مطلوب. 8 لنظام Windows
    "wns_psid": "ms-app://…",        // مطلوب. معرف أمان الحزمة للتطبيق من متجر Windows
    "wns_secret": "CLIENT_SECRET"    // مطلوب. سر عميل Windows 
  }
}


```

## configureApplication لمنصة Amazon

يقوم بتكوين منصة Amazon للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| ------------------------------------------------ | ------- | -------------------------------------------------------------- |
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 9 لمنصة Amazon. |
| adm\_cid\* | string | معرف عميل Amazon. |
| adm\_secret\* | string | سر عميل Amazon. |
| adm\_framework\* | string | إطار عمل Amazon. القيم الممكنة: _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="مثال"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",  // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",    // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 9,                // مطلوب. 9 لمنصة Amazon
    "adm_cid": "CLIENT_ID",          // مطلوب. معرف عميل Amazon
    "adm_secret": "CLIENT_SECRET",   // مطلوب. سر عميل Amazon
    "adm_framework": "native"        // مطلوب. القيم الممكنة: native, unity, adobeAir. 
  }
}
```

## configureApplication لمتصفح Chrome

يقوم بتكوين منصة Chrome للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف | مطلوب |
|------------------------------|---------|-----------------------------------------------------------------------------------------------------|----------|
| auth* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. | مطلوب |
| application* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) | مطلوب |
| device_type* | integer | يجب أن يكون 11 لمتصفح Chrome. | مطلوب |
| chrome_fcm_service_account* | object | مفتاح حساب خدمة FCM (ملف JSON تم إنشاؤه في إعدادات مشروع Firebase). | مطلوب |
| chrome_vapid_key* | string | مفتاح VAPID العام (Voluntary Application Server Identification) المستخدم لمصادقة الإشعارات الفورية في Chrome. | مطلوب |
| chrome_vapid_private_key* | string | مفتاح VAPID الخاص المستخدم لتوقيع وإرسال الإشعارات الفورية في Chrome. | مطلوب |


```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="مثال">
```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 لمتصفح Safari

يقوم بتكوين منصة Safari للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| --------------------------------------------------------------- | ------- |-------------------------------------------------|
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 10 لمتصفح Safari. |
| safari\_key\_management\_type\* | string | النوع "manual" فقط هو المتاح حاليًا. |
| safari\_website\_name | string | اسم موقع الويب. |
| safari\_allowed\_domains | array | مثال: https://site1.com", https://site2.com" |
| safari\_url\_template\* | string | قالب URL لمتصفح Safari بالتنسيق "https://%@". |
| safari\_icon\_file | string | محتوى ملف png بحجم 256x256 بكسل مشفر بـ Base64. |
| safari\_key\_file\* | string | محتوى ملف مفتاح Safari .p12 المشفر بـ Base64. |
| safari\_key\_password | string | كلمة المرور لملف المفتاح. |

<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="مثال"
{
  "request": {
    "auth": "yxoPUlwqm…………pIyEX4H",                    // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",                      // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 10,                                 // مطلوب. 10 لمتصفح Safari
    "safari_key_management_type": "manual",            // مطلوب. "manual"
    "safari_website_name": "WEBSITE_NAME",             // اختياري.
    "safari_allowed_domains": [                        // اختياري.
      "https://site1.com",
      "https://site2.com"
    ],
    "safari_url_template": "https://%@",               // مطلوب.
    "safari_icon_file": "iVBORw0KGgoAAAANSUhEUgAABB…", // اختياري. محتوى ملف png بحجم 256x256 بكسل مشفر بـ Base64
    "safari_key_file": "MIIMY...BAQ==",                // مطلوب. محتوى ملف مفتاح Safari .p12 المشفر بـ base64
    "safari_key_password": "PASSWORD"                  // اختياري. كلمة المرور لملف المفتاح أعلاه  
  }
}


```

## configureApplication لمتصفح Firefox

يقوم بتكوين منصة Firefox للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف | مطلوب |
|-------------------------------|---------|-------------------------------------------------------------------------------------------------------|----------|
| auth* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. | مطلوب |
| application* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) | مطلوب |
| device_type* | integer | يجب أن يكون 12 لمتصفح Firefox. | مطلوب |
| firefox_is_enabled | boolean | يفعل الإشعارات الفورية لمتصفح Firefox. | اختياري |
| firefox_fcm_service_account* | object | ملف JSON تم إنشاؤه في إعدادات مشروع Firebase. | مطلوب |
| firefox_vapid_key* | string | مفتاح VAPID العام (Voluntary Application Server Identification) المستخدم لمصادقة الإشعارات الفورية في Firefox. | مطلوب |
| firefox_vapid_private_key* | string | مفتاح VAPID الخاص المستخدم لتوقيع وإرسال الإشعارات الفورية في Firefox. | مطلوب |


<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="مثال">
```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 للبريد الإلكتروني

يقوم بتكوين منصة البريد الإلكتروني للتطبيق.

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


#### نص الطلب

| الاسم | النوع | الوصف |
| ---------------------------------------------------- | ------- | --------------------------------------------------------- |
| auth\* | string | [رمز الوصول إلى API](/ar/developer/api-reference/api-identifiers/#api-access-token) من لوحة تحكم Pushwoosh. |
| application\* | string | [رمز تطبيق Pushwoosh](/ar/developer/api-reference/api-identifiers/#application-code) |
| device\_type\* | integer | يجب أن يكون 14 للبريد الإلكتروني. |
| email\_from\_email\* | string | عنوان البريد الإلكتروني للمرسل. يجب أن يكون صالحًا ومُتحققًا منه. |
| email\_from\_name\* | string | اسم المرسل. |
| email\_reply\* | string | عنوان البريد الإلكتروني للرد عليه. يجب أن يكون صالحًا ومُتحققًا منه. |

<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="مثال"
{
  "request":{
    "auth": "yxoPUlwqm…………pIyEX4H",         // مطلوب. رمز الوصول إلى API من لوحة تحكم Pushwoosh
    "application": "XXXXX-XXXXX",           // مطلوب. رمز تطبيق Pushwoosh
    "device_type": 14,                      // مطلوب. 14 للبريد الإلكتروني
    "email_from_email": "email@domain.com", // مطلوب. يجب أن يكون عنوان البريد الإلكتروني صالحًا ومُتحققًا منه
    "email_from_name": "SENDER_NAME",       // مطلوب. الاسم الذي سيتم عرضه في حقل "من" في البريد الإلكتروني
    "email_reply": "email@domain.com"       // مطلوب. يجب أن يكون عنوان البريد الإلكتروني للرد صالحًا ومُتحققًا منه
  }
}
```