> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getqr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# بيانات رمز QR حسب النوع

> صيغة البيانات، ومثال على الطلب، وسلوك التعديل بعد الطباعة لكل نوع من أنواع رموز QR الستة عشر.

> [!NOTE]
>
> GetQR API في مرحلة تجريبية (beta) ومتاحة لمساحات عمل مختارة. قد تتغير التفاصيل قبل الإصدار العام.

لكل رمز QR قيمة `qrType`، ويحدد النوع ما يجب أن تحتويه `data`. يسرد هذا الدليل صيغة كل نوع، وجسم طلب يعمل، وما يمكنك تغييره بعد طباعة الرمز.

الأمثلة أجسام طلبات لـ [إنشاء رمز QR](https://docs.getqr.com/ar/api/endpoints/qr-codes.md#إنشاء-رمز-qr). أرسلها هكذا:

```bash theme={null}
curl -X POST "https://getqr.com/api/v1/qrs" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "qrType": "website", "data": "https://example.com/menu", "title": "Menu" }'
```

## نظرة سريعة على جميع الأنواع

| `qrType` | `data` | قابل للتعديل بعد الطباعة |
| - | - | - |
| [`website`](#موقع-ويب) | رابط http(s) | نعم |
| [`feedback`](#الآراء-والتقييمات) | رابط http(s) للنموذج | نعم |
| [`payment`](#الدفع) | رابط مزوّد الدفع | نعم |
| [`whatsapp`](#whatsapp) | رابط `wa.me` | نعم |
| [`location`](#الموقع-الجغرافي) | رابط خريطة | نعم |
| [`app`](#رابط-التطبيق) | رابط المتجر أو قيمة فارغة، مع `link.ios` / `link.android` | نعم |
| [`email`](#البريد-الإلكتروني) | رابط URI من نوع `mailto:` | نعم |
| [`sms`](#sms) | رابط URI من نوع `sms:` | نعم |
| [`wifi`](#wifi) | حمولة `WIFI:` | **لا** |
| [`pdf`, `image`, `video`](#pdf-والصور-والفيديو) | فارغة، مع `fileId` | نعم |
| [`vcard`](#vcard) | نص vCard 3.0 | نعم |
| [`social`](#وسائل-التواصل-الاجتماعي) | سلسلة JSON | نعم |
| [`multilink`](#متعدد-الروابط) | سلسلة JSON | نعم |
| [`event`](#الفعاليات) | سلسلة JSON | نعم |

## كيف يعمل رمز QR

كل رمز QR هو رابط قصير مع حمولة. يحمل المحتوى حقلان:

| الحقل | ما هو |
| - | - |
| `link.url` | المكان الذي يرسل إليه الرابط القصير الزائر. هذه هي الوجهة الفعلية لكل الأنواع باستثناء `wifi`. |
| `data` | حمولة النوع، ويُتحقق منها وفق `qrType`. لا تُحفظ كما أُرسلت إلا للأنواع `wifi` و`vcard` و`social` و`multilink` و`event` و`sms`. في كل الأنواع الأخرى، لا تفعل سوى توفير `link.url`، وتصبح `data` المحفوظة هي الرابط القصير. اقرأ الوجهة من `url` في الاستجابة. |

قواعد تنطبق على كل الأنواع:

* **القيم الافتراضية.** عند الإنشاء، تصبح قيمة `link.url` المحذوفة أو الفارغة مساوية لـ `data`، ويمكنك حذف الكائن `link` بالكامل. إذا أُرسلا كلاهما واختلفا، تكون الأولوية لـ `link.url`. أرسلهما متساويين، أو أرسل `data` وحدها.
* **ما ترمّزه الصورة.** ترمّز الصورة الرابط القصير لكل الأنواع باستثناء `wifi`. لذا يمكنك تغيير وجهة رمز مطبوع، وتُتتبَّع عمليات مسحه. أما رمز QR لشبكة WiFi فيرمّز الشبكة نفسها: لا يمكنك تغييره بعد الطباعة، ولا تُتتبَّع عمليات مسحه.
* **المخططات.** لا يقبل `link.url` إلا `http:` و`https:` و`wifi:` و`mailto:` و`sms:` و`begin:`. أي شيء آخر، بما في ذلك `geo:` و`smsto:` و`matmsg:` و`tel:`، يحصل على `422 Invalid destination URL`، حتى إن قبلته `data`.
* **البيانات الفارغة.** تتخطى `data` الفارغة فحص النوع. في أنواع إعادة التوجيه، يجب حينئذٍ ضبط `link.url`، وإلا يحصل الاستدعاء على `400 Missing destination URL`.
* **البنية.** بخلاف فحص النوع، لا يتحقق الخادم من الحمولة. يكفي أن تُحلَّل حمولة الأنواع JSON ككائن JSON، وأن تبدأ vCard بـ `BEGIN:VCARD`.

> [!TIP]
>
> الحدود المميّزة بـ **المحرر** أدناه هي ما يفرضه محرر لوحة التحكم. تقبل API الحمولات التي تتجاهلها، لكنها قد تظهر بشكل غريب في الصفحة المقصودة أو في المحرر.

## موقع ويب

`qrType`: `"website"`. دليل لوحة التحكم: [رمز QR لموقع ويب](https://docs.getqr.com/ar/qr-types/website.md).

| الحقل | السلوك |
| - | - |
| `data` | رابط http(s). |
| `link.url` | الوجهة. القيمة الافتراضية `data`. |
| `fileId` | غير مسموح. |
| ما يُرمِّزه | الرابط القصير، الذي يعيد التوجيه إلى `link.url`. تُتتبَّع عمليات المسح. |
| بعد الطباعة | قابل للتعديل. أرسل `data` أو `link.url` لنقل الوجهة. تكفي `data` وحدها. |

```json Request body theme={null}
{
  "qrType": "website",
  "data": "https://example.com/menu",
  "title": "Menu"
}
```

الأخطاء:

* `422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".`
* `422 Invalid destination URL`

## الآراء والتقييمات

`qrType`: `"feedback"`. دليل لوحة التحكم: [رمز QR للآراء والتقييمات](https://docs.getqr.com/ar/qr-types/feedback.md).

`data` هي رابط http(s) لنموذج الآراء، مثل Google Form أو صفحة تقييمات. يعمل كل ما عدا ذلك كما في [موقع ويب](#موقع-ويب).

```json Request body theme={null}
{
  "qrType": "feedback",
  "data": "https://forms.gle/abc123"
}
```

## الدفع

`qrType`: `"payment"`. دليل لوحة التحكم: [رمز QR للدفع](https://docs.getqr.com/ar/qr-types/payment.md).

`data` هي رابط الدفع لدى المزوّد، على سبيل المثال:

```text theme={null}
https://paypal.me/<user>/25EUR
```

يتعرّف محرر لوحة التحكم على هذه النطاقات: `paypal.me` و`paypal.com/paypalme` و`cash.app` و`venmo.com` و`buy.stripe.com` و`stripe.com` و`square.link` و`payoneer.com`. في PayPal، يكون المبلغ هو المقطع الأخير من المسار. يعمل أي رابط http(s) آخر أيضًا، لكن المحرر لن يقسمه إلى مزوّد ومبلغ. يعمل كل ما عدا ذلك كما في [موقع ويب](#موقع-ويب).

```json Request body theme={null}
{
  "qrType": "payment",
  "data": "https://paypal.me/acme/25EUR"
}
```

## WhatsApp

`qrType`: `"whatsapp"`. دليل لوحة التحكم: [رمز QR لـ WhatsApp](https://docs.getqr.com/ar/qr-types/whatsapp.md).

`data` هي رابط `wa.me`: الرقم الدولي بالأرقام دون `+`، مع نص معبأ مسبقًا اختياريًا.

```text theme={null}
https://wa.me/<digits>
https://wa.me/<digits>?text=<urlencoded>
```

لا يتحقق الخادم إلا من كونه رابط http(s). تقرأ لوحة التحكم أيضًا روابط `api.whatsapp.com/send`. يعمل كل ما عدا ذلك كما في [موقع ويب](#موقع-ويب).

```json Request body theme={null}
{
  "qrType": "whatsapp",
  "data": "https://wa.me/14155550123?text=Hi%20there"
}
```

## الموقع الجغرافي

`qrType`: `"location"`. دليل لوحة التحكم: [رمز QR للموقع الجغرافي](https://docs.getqr.com/ar/qr-types/location.md).

`data` هي رابط خريطة. استخدم هذه الصيغة ليبقى رمز QR قابلًا للتعديل في لوحة التحكم (`query_place_id` اختياري):

```text theme={null}
https://www.google.com/maps/search/?api=1&query=<address>&query_place_coords=<lat>,<lng>&query_place_id=<id>
```

يعيد أي رابط http(s) آخر التوجيه أيضًا. يجتاز رابط URI من نوع `geo:` فحص `data` لكنه يُرفض كوجهة، لذا لا تستخدمه. يعمل كل ما عدا ذلك كما في [موقع ويب](#موقع-ويب).

```json Request body theme={null}
{
  "qrType": "location",
  "data": "https://www.google.com/maps/search/?api=1&query=Golden+Gate+Bridge&query_place_coords=37.8199,-122.4783"
}
```

## رابط التطبيق

`qrType`: `"app"`. دليل لوحة التحكم: [رمز QR لرابط التطبيق](https://docs.getqr.com/ar/qr-types/app-link.md).

| الحقل | السلوك |
| - | - |
| `link.ios`، `link.android` | روابط App Store وGoogle Play. ينتقل زوار iOS إلى `ios`، وزوار Android إلى `android`. لهما الأولوية على كل شيء آخر عند المسح. |
| `link.url` | الوجهة البديلة للأجهزة الأخرى. القيمة الافتراضية `data`، ثم `ios` أو `android`. |
| `data` | رابط http(s) (ترسل لوحة التحكم رابط المتجر)، أو قيمة فارغة. يجب ضبط واحد على الأقل من `link.ios` أو `link.android` أو `link.url` أو `data`، وإلا يحصل الاستدعاء على `400 Missing destination URL`. |
| `fileId` | غير مسموح. |
| ما يُرمِّزه | الرابط القصير. تُتتبَّع عمليات المسح. |
| بعد الطباعة | قابل للتعديل. يُطبَّق `link.ios` و`link.android` كلٌّ على حدة، وفقط عند إرسالهما. `null` تمسح أحدهما. لا حاجة إلى إعادة إرسال `qrType`. التبديل إلى نوع آخر يمسح رابطي المتجرين كليهما. |

```json Request body theme={null}
{
  "qrType": "app",
  "data": "https://apps.apple.com/app/id123456789",
  "link": {
    "ios": "https://apps.apple.com/app/id123456789",
    "android": "https://play.google.com/store/apps/details?id=com.acme.app"
  }
}
```

الأخطاء:

* `422 Invalid URL`
* `400 Missing destination URL`

## البريد الإلكتروني

`qrType`: `"email"`. دليل لوحة التحكم: [رمز QR للبريد الإلكتروني](https://docs.getqr.com/ar/qr-types/email.md).

```text theme={null}
mailto:<address>?subject=<subject>&body=<body>
```

| الحقل | السلوك |
| - | - |
| `data` | رابط URI من نوع `mailto:` مع موضوع ونص اختياريين. رمّز المسافات بـ `%20`: تكتبها لوحة التحكم بـ `+`، ولا تقرؤها كل تطبيقات البريد كمسافة. يُرفض `matmsg:` كوجهة. |
| `link.url` | رابط URI من نوع `mailto:`. القيمة الافتراضية `data`. |
| `fileId` | غير مسموح. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة تنقل الزائر إلى تطبيق البريد. |
| بعد الطباعة | قابل للتعديل. أرسل `data` أو `link.url` لتغيير الرسالة. تكفي `data` وحدها. |

```json Request body theme={null}
{
  "qrType": "email",
  "data": "mailto:hi@example.com?subject=Hello&body=Hi%20there"
}
```

الأخطاء:

* `422 Expected a mailto URI, e.g. "mailto:hi@example.com?subject=Hello" for qrType "email".`

## SMS

`qrType`: `"sms"`. دليل لوحة التحكم: [رمز QR للرسائل النصية SMS](https://docs.getqr.com/ar/qr-types/sms.md).

```text theme={null}
sms:+<digits>
sms:+<digits>?body=<encodeURIComponent(text)>
```

| الحقل | السلوك |
| - | - |
| `data` | رابط URI من نوع `sms:` مع نص اختياري. لا تقرأ لوحة التحكم إلا هذه الصيغة بالضبط. يُرفض `smsto:` كوجهة. |
| `link.url` | رابط URI من نوع `sms:`. القيمة الافتراضية `data`. |
| `fileId` | غير مسموح. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة تنقل الزائر إلى تطبيق الرسائل. |
| بعد الطباعة | قابل للتعديل. أرسل `data` أو `link.url` لتغيير الرسالة. تكفي `data` وحدها. |

```json Request body theme={null}
{
  "qrType": "sms",
  "data": "sms:+14155550123?body=Table%2012"
}
```

الأخطاء:

* `422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".`

## WiFi

`qrType`: `"wifi"`. دليل لوحة التحكم: [رمز QR لشبكة WiFi](https://docs.getqr.com/ar/qr-types/wifi.md).

```text theme={null}
WIFI:T:<WPA|WEP|nopass>;S:<ssid>;P:<password>;H:<true|false>;;
```

| الحقل | السلوك |
| - | - |
| `data` | مطلوب. حافظ على الترتيب `T` و`S` و`P` و`H`: يعتمد عليه محرر لوحة التحكم والقائمة. اهرب الأحرف `\` و`;` و`"` و`:` في SSID وكلمة المرور بشرطة مائلة عكسية. للشبكة المفتوحة، استخدم `T:nopass` مع `P:` فارغة. ترفض أدوات المسح `T:none`. **المحرر:** SSID مطلوب، وكلمة المرور 8 أحرف على الأقل ما لم تكن `nopass`. |
| `link.url` | لا يُستخدم للمسح. القيمة الافتراضية `data`. |
| `fileId` | غير مسموح. |
| ما يُرمِّزه | حمولة `WIFI:` الخام، لا الرابط القصير. لا تُتتبَّع عمليات المسح. |
| بعد الطباعة | **غير قابل للتعديل.** لا تغيّر `data` الجديدة إلا التنزيلات المستقبلية. تحتفظ الرموز المطبوعة بالشبكة القديمة. |

```json Request body theme={null}
{
  "qrType": "wifi",
  "data": "WIFI:T:WPA;S:Cafe Guest;P:espresso42;H:false;;"
}
```

الأخطاء:

* `422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".`

> [!WARNING]
>
> لا تبدّل نوع رمز QR مطبوع لشبكة WiFi. تحتفظ الرموز المطبوعة بالشبكة القديمة.

## PDF والصور والفيديو

`qrType`: `"pdf"` أو `"image"` أو `"video"`. أدلة لوحة التحكم: [PDF](https://docs.getqr.com/ar/qr-types/pdf.md)، [الصور](https://docs.getqr.com/ar/qr-types/image.md)، [الفيديو](https://docs.getqr.com/ar/qr-types/video.md).

| الحقل | السلوك |
| - | - |
| `fileId` | الملف. ارفعه بالغرض المطابق للنوع: `pdf` أو `image` أو `video`. مع `fileId`، يصبح `link.url` رابط الملف، ويُتجاهل أي شيء ترسله فيه. |
| `data` | أي شيء باستثناء حمولة نوع آخر (`WIFI:`، `BEGIN:VCARD`، `sms:`، `mailto:`، كائن JSON). القيمة الفارغة مقبولة. |
| `link.url` | دون `fileId`، يُستخدم `link.url` (أو `data`) كوجهة خارجية. يعمل ذلك، لكن لوحة التحكم لا تعرض أي ملف. |
| ما يُرمِّزه | الرابط القصير، الذي يعيد التوجيه مباشرة إلى الملف. يُفتح ملف PDF كملف خام، لا في صفحة عارض. |
| بعد الطباعة | قابل للتعديل. أرسل `fileId` جديدًا لاستبدال الملف. يُحرَّر الملف القديم. |

ملف واحد لكل رمز QR: حزم PDF ومعارض الصور غير متاحة في API. راجع [غير مدعوم عبر API](#غير-مدعوم-عبر-api).

```json pdf theme={null}
{
  "qrType": "pdf",
  "data": "",
  "fileId": "file_9f8e7d6c5b4a",
  "title": "Brochure"
}
```

```json image theme={null}
{
  "qrType": "image",
  "data": "",
  "fileId": "file_3c2b1a0f9e8d",
  "title": "Floor plan"
}
```

```json video theme={null}
{
  "qrType": "video",
  "data": "",
  "fileId": "file_5e4d3c2b1a0f",
  "title": "Product demo"
}
```

لرفع الملف والحصول على `fileId` الخاص به، راجع [الملفات](https://docs.getqr.com/ar/api/endpoints/files.md).

## vCard

`qrType`: `"vcard"`. دليل لوحة التحكم: [رمز QR لبطاقة vCard](https://docs.getqr.com/ar/qr-types/vcard.md).

| الحقل | السلوك |
| - | - |
| `data` | مطلوب. نص vCard 3.0 يبدأ بـ `BEGIN:VCARD`، وأسطره مفصولة بـ `\r\n` (يعمل `\n` أيضًا). |
| `fileId` | صورة ملف شخصي اختيارية (الغرض `logo`)، تُستخدم عندما لا تحتوي `data` على سطر `PHOTO` أو `X-GETQR-IMAGE-FILEID`. |
| `link.url` | يُتجاهل ويُستبدل بالصفحة المستضافة. لا ترسله. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة جهة الاتصال المستضافة مع تنزيل لحفظ جهة الاتصال (`.vcf`). |
| بعد الطباعة | قابل للتعديل. أرسل `data` جديدة لتحديث الصفحة. |

لا تقرأ الصفحة المقصودة والمحرر إلا صيغ الأسطر أدناه. تُحفظ الصيغ الأخرى، مثل `TEL;CELL:` أو `EMAIL;TYPE=INTERNET:`، لكنها لا تظهر في الصفحة.

* `N:<last>;<first>;;;`: اسم العائلة والاسم الأول. **المحرر:** كلاهما مطلوب، حتى 40 حرفًا.
* `FN:<first> <last>`: لا تقرؤه الصفحة. تُؤخذ منه تسمية القائمة في لوحة التحكم.
* `ORG:<company>` و`TITLE:<role>`: الشركة والمسمى الوظيفي. **المحرر:** حتى 40 حرفًا.
* `TEL;TYPE=HOME:`، `TEL;TYPE=CELL:`، `TEL;TYPE=WORK:`، `TEL;TYPE=FAX:`: أرقام الهاتف والجوال والعمل والفاكس (`+` وأرقام).
* `EMAIL:<email>`: عنوان البريد الإلكتروني.
* `URL:<url>`: الموقع الإلكتروني.
* `NOTE:<text>`: الملخص. استخدم الهروب `\\` و`\n` و`\;` و`\,`. **المحرر:** حتى 200 حرف.
* `ADR:;;<street>;<city>;<state>;<zip>;<country>`: العنوان.
* `X-SOCIALPROFILE;TYPE=<platform>:<url>` أو `URL;TYPE=<PLATFORM>:<url>`: روابط التواصل الاجتماعي، سطر واحد لكل منصة.
* `PHOTO;VALUE=URI:<url>`: رابط صورة الملف الشخصي. له الأولوية على أي معرّف ملف.
* `X-GETQR-IMAGE-FILEID:<fileId>`: صورة الملف الشخصي (الغرض `logo`).
* `X-GETQR-PAGE-LOGO-FILEID:<fileId>`: شعار الصفحة (الغرض `logo`).
* `X-GETQR-LANDING-THEME:p|<0-4>` أو `X-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB`: سمة الصفحة المقصودة، إما فهرس إعداد مسبق (من 0 إلى 4) أو ألوان مخصصة للخلفية والزر والأيقونة.

منصات التواصل: `facebook`، `whatsapp`، `instagram`، `youtube`، `tiktok`، `messenger`، `snapchat`، `linkedin`، `x`، `reddit`، `pinterest`، `telegram`، `wechat`، `viber`، `line`.

```json Request body theme={null}
{
  "qrType": "vcard",
  "data": "BEGIN:VCARD\r\nVERSION:3.0\r\nN:Doe;Jane;;;\r\nFN:Jane Doe\r\nORG:Acme\r\nTITLE:CTO\r\nTEL;TYPE=CELL:+14155550123\r\nEMAIL:jane@acme.com\r\nURL:https://acme.com\r\nX-GETQR-LANDING-THEME:p|0\r\nEND:VCARD",
  "title": "Jane Doe"
}
```

الأخطاء:

* `422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".`

## وسائل التواصل الاجتماعي

`qrType`: `"social"`. دليل لوحة التحكم: [رمز QR لوسائل التواصل الاجتماعي](https://docs.getqr.com/ar/qr-types/social.md).

| الحقل | السلوك |
| - | - |
| `data` | مطلوب. سلسلة JSON ترمّز كائنًا. أنشئها باستخدام `JSON.stringify`. |
| `fileId` | صورة ملف شخصي اختيارية في المستوى الأعلى (الغرض `logo`). |
| `link.url` | يُتجاهل ويُستبدل بالصفحة المستضافة. لا ترسله. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة التواصل الاجتماعي المستضافة. |
| بعد الطباعة | قابل للتعديل. أرسل `data` جديدة لتحديث الصفحة. |

حقول `data`:

| الحقل | النوع | ملاحظات |
| - | - | - |
| `firstName` | string | عنوان الصفحة والاسم الوحيد المعروض. **المحرر:** مطلوب، حتى 40. |
| `lastName` | string | حتى 40. لا يظهر في الصفحة. |
| `summary` | string | حتى 200. |
| `socialLinks` | `{ platform, url }[]` | `platform` واحدة من [منصات التواصل في vCard](#vcard). **المحرر:** كل منصة مرة واحدة. |
| `customItems` | `{ name, url, logoFileId }[]` | **المحرر:** `name` حتى 40، و`url` من نوع http(s)، و`logoFileId`. رابط تواصل واحد أو عنصر مخصص واحد على الأقل إجمالًا. |
| `fileId` | string | صورة الملف الشخصي (الغرض `logo`). `fileId` في المستوى الأعلى هو البديل. |
| `imageUrl` | string | رابط خارجي لصورة الملف الشخصي، يُستخدم فقط عند عدم وجود معرّف ملف. |
| `pageLogoFileId` | string | شعار الصفحة (الغرض `logo`). |
| `landingThemeMode` | `"preset" \| "custom"` | القيمة الافتراضية `preset`. |
| `landingPresetIndex` | 0–4 | القيمة الافتراضية 0. |
| `landingCustomBg`، `landingCustomButton`، `landingCustomIcon` | `#RRGGBB` | يُستخدم عندما يكون الوضع `custom`. |

```json Request body theme={null}
{
  "qrType": "social",
  "data": "{\"firstName\":\"Acme Coffee\",\"summary\":\"Follow us\",\"socialLinks\":[{\"platform\":\"instagram\",\"url\":\"https://instagram.com/acme\"}],\"customItems\":[]}"
}
```

الأخطاء:

* `422 Expected a JSON object describing the social profile page for qrType "social".`

## متعدد الروابط

`qrType`: `"multilink"`. دليل لوحة التحكم: [رمز QR متعدد الروابط](https://docs.getqr.com/ar/qr-types/multi-link.md).

| الحقل | السلوك |
| - | - |
| `data` | مطلوب. سلسلة JSON ترمّز كائنًا. |
| `fileId` | صورة ملف شخصي اختيارية في المستوى الأعلى (الغرض `logo`). |
| `link.url` | يُتجاهل ويُستبدل بالصفحة المستضافة. لا ترسله. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة الروابط المتعددة المستضافة. |
| بعد الطباعة | قابل للتعديل. أرسل `data` جديدة لتحديث الصفحة. |

حقول `data` هي حقول [وسائل التواصل الاجتماعي](#وسائل-التواصل-الاجتماعي) نفسها، إلا أن `firstName` و`lastName` و`summary` تُستبدل بما يلي:

| الحقل | النوع | ملاحظات |
| - | - | - |
| `title` | string | عنوان الصفحة. **المحرر:** مطلوب، حتى 40. |
| `description` | string | حتى 200. |

في `customItems`، يكون `logoFileId` اختياريًا: تظهر أيقونة بديلة. **المحرر:** رابط تواصل واحد على الأقل أو عنصر مخصص واحد غير فارغ.

```json Request body theme={null}
{
  "qrType": "multilink",
  "data": "{\"title\":\"Acme links\",\"description\":\"Everything in one place\",\"socialLinks\":[],\"customItems\":[{\"name\":\"Shop\",\"url\":\"https://acme.com/shop\",\"logoFileId\":\"\"}]}"
}
```

الأخطاء:

* `422 Expected a JSON object describing the multi-link page for qrType "multilink".`

## الفعاليات

`qrType`: `"event"`. دليل لوحة التحكم: [رمز QR للفعاليات](https://docs.getqr.com/ar/qr-types/event.md).

| الحقل | السلوك |
| - | - |
| `data` | مطلوب. سلسلة JSON ترمّز كائنًا. تعود القيم غير المعروفة أو غير الصالحة إلى القيم الافتراضية. |
| `fileId` | يُتحقق منه (الغرض `logo`) ويُحفظ، لكن صفحة الفعالية لا تقرأ صورة الغلاف إلا من `data.fileId`. ضع معرّف الغلاف في الحمولة. |
| `link.url` | يُتجاهل ويُستبدل بالصفحة المستضافة. لا ترسله. |
| ما يُرمِّزه | الرابط القصير، الذي يفتح صفحة الفعالية المستضافة مع تنزيل `.ics`. |
| بعد الطباعة | قابل للتعديل. أرسل `data` جديدة لتحديث الصفحة. |

حقول `data`:

| الحقل | النوع | ملاحظات |
| - | - | - |
| `name` | string | **المحرر:** مطلوب. |
| `eventType` | string | أحد أنواع الفعاليات أدناه، أو قيمة فارغة. |
| `start`، `end` | `"YYYY-MM-DDTHH:mm"` | الوقت المحلي في `timezone`. **المحرر:** كلاهما مطلوب، والنهاية بعد البداية. |
| `timezone` | IANA، مثل `"Europe/Berlin"` | يضع البداية والنهاية في ملف `.ics`. أرسله دائمًا: المنطقة الفارغة أو غير المعروفة تجعل `.ics` يعامل الأوقات على أنها UTC. |
| `street`، `zip`، `city`، `state`، `country` | string | **المحرر:** `city` و`country` مطلوبان، حتى 40 لكل منهما. |
| `facilities` | string\[] | معرّفات من القائمة أدناه. تُحذف المعرّفات غير المعروفة. |
| `notes` | string | نص حر. |
| `fileId` | string | صورة الغلاف (الغرض `logo`). |
| `pageLogoFileId` | string | شعار الصفحة (الغرض `logo`). |
| `organizerName`، `organizerEmail`، `mobile`، `work` | string | `mobile` و`work` حتى 40. |
| `socialLinks` | `{ platform, url }[]` | [منصات التواصل في vCard](#vcard)، إضافةً إلى `website`. |
| `ticketsUrl` | رابط http(s) | رابط شراء التذاكر. |
| `ticketsLabel` | string | حتى 20 حرفًا. تُقتطع التسميات الأطول. القيمة الفارغة تعرض التسمية الافتراضية. |

> [accordion] أنواع الفعاليات
>
> `conference`, `seminar`, `workshop`, `training`, `webinar`, `meetup`, `networking`, `corporateEvent`, `productLaunch`, `tradeShow`, `jobFair`, `fundraiser`, `charity`, `wedding`, `engagement`, `birthday`, `anniversary`, `babyShower`, `graduation`, `reunion`, `party`, `religious`, `funeralMemorial`, `ceremony`, `concert`, `festival`, `clubNight`, `theater`, `comedy`, `filmScreening`, `exhibition`, `sports`, `tournament`, `raceMarathon`, `fitnessClass`, `foodDrink`, `market`, `openHouse`, `community`, `schoolEvent`, `kids`, `travelTour`

> [accordion] المرافق
>
> | المجموعة | المعرّفات |
> | - | - |
> | الدخول | `freeEntry`، `idRequired`، `invitationOnly`، `plusOneAllowed`، `reEntryAllowed` |
> | العمر (اختر واحدًا) | `adultsOnly`، `age18Plus`، `age21Plus`، `kidsWelcome` |
> | في الموقع | `parking`، `publicTransport`، `shuttle`، `wheelchairAccess`، `evCharging`، `wifi`، `foodDrinks`، `alcoholServed`، `atm`، `coatCheck`، `pool`، `phoneCharging`، `firstAid`، `wc` |
> | القواعد | `petsAllowed`، `noPets`، `smokingArea`، `noSmoking`، `noPhotos` |
> | قواعد اللباس (اختر واحدًا) | `dressCasual`، `dressSmartCasual`، `dressBusiness`، `dressCocktail`، `dressThemed` |

```json Request body theme={null}
{
  "qrType": "event",
  "data": "{\"name\":\"Launch party\",\"eventType\":\"productLaunch\",\"start\":\"2026-11-20T18:00\",\"end\":\"2026-11-20T22:00\",\"timezone\":\"Europe/Berlin\",\"city\":\"Berlin\",\"country\":\"Germany\",\"facilities\":[\"freeEntry\"],\"socialLinks\":[],\"ticketsUrl\":\"https://acme.com/tickets\"}"
}
```

الأخطاء:

* `422 Expected a JSON object describing the event page for qrType "event".`

## الملفات في رموز QR

سجّل ملفًا عبر [الملفات](https://docs.getqr.com/ar/api/endpoints/files.md)، وارفعه، ثم مرّر `fileId` الخاص به. استخدم الغرض المطابق للاستخدام:

* **`pdf`، `image`، `video`.** محتوى رمز QR من نوع PDF أو صورة أو فيديو.
* **`logo`.** صور الملفات الشخصية، وشعارات الصفحات، وأيقونات الروابط المخصصة، والشعارات في الوسط.

تُحذف الملفات التي لا تُرفق أبدًا برمز QR بعد فترة سماح.

أخطاء `fileId`، التي تُرجع عند الإنشاء وعند `PATCH` إذا أُرسل `fileId`:

| الحالة | السبب |
| - | - |
| `422 unprocessable_entity` | النوع لا يقبل ملفًا. لا تقبل الملفات إلا الأنواع `pdf` و`image` و`video` و`vcard` و`social` و`multilink` و`event`. |
| `404 not_found` | لا يوجد ملف بهذا المعرّف. سجّله أولًا باستخدام `POST /api/v1/files`. |
| `422 unprocessable_entity` | رُفع الملف لغرض مختلف. مثلًا، ملف مرفوع بالغرض `image` على رمز QR من نوع PDF، أو ملف مرفوع بالغرض `pdf` أو `image` أو `video` يُستخدم كصورة vCard. |
| `422 unprocessable_entity` | الملف مسجّل، لكن الرفع إلى `uploadUrl` لم يكتمل قط. |

لا يُتحقق من معرّفات الملفات داخل الحمولة (`fileId`، `pageLogoFileId`، `customItems[].logoFileId`، أسطر `X-GETQR-*-FILEID`). ولا تظهر إلا إذا رُفعت بالغرض `logo`. يطالب بها رمز QR، فلا تمسّها عملية التنظيف.

## تبديل النوع

يمكنك تغيير `qrType` عبر [تحديث رمز QR](https://docs.getqr.com/ar/api/endpoints/qr-codes.md#تحديث-رمز-qr). أرسل `data` تطابق النوع الجديد: الحمولة المحفوظة تخص النوع القديم، لذا يُرفض التبديل دون بيانات جديدة.

بعد التحديث، تُحدَّد الوجهة بهذا الترتيب:

1. `vcard`، `social`، `multilink`، `event`: الصفحة المستضافة دائمًا.
2. حزمة PDF أو معرض صور أُنشئ في لوحة التحكم: صفحته المقصودة.
3. `pdf`، `image`، `video`: رابط الملف (`fileId` جديد، وإلا المحفوظ).
4. `link.url`، عند إرساله.
5. `data` المُعدَّلة.
6. الرابط المحفوظ.

ما يفعله كل تبديل:

* **الخروج من `pdf` أو `image` أو `video`.** يُمسح `fileId` وأي حزمة أو معرض.
* **الانتقال إلى `pdf` أو `image` أو `video`.** أرسل `fileId` أيضًا، وإلا يُعاد استخدام المحفوظ، وقد يكون صورة vCard.
* **الخروج من `app`.** يُمسح اسم التطبيق و`link.ios` و`link.android`، فتتبع الهواتف الوجهة الجديدة.
* **الانتقال إلى `wifi`.** تتحول الصورة إلى الحمولة الخام. أما الرموز المطبوعة سابقًا فلا تزال تحمل الرابط القصير، الذي يعيد التوجيه الآن إلى رابط `wifi:`.
* **الخروج من `wifi`.** تحتفظ الرموز المطبوعة بشبكتها القديمة.
* **الانتقال إلى `vcard` أو `social` أو `multilink` أو `event`.** يُوجَّه الرابط القصير إلى الصفحة المستضافة الجديدة.
* **الخروج من `vcard` أو `social` أو `multilink` أو `event`.** أرسل `data` الجديدة. تتبعها الوجهة.

ليس لرموز QR الثابتة المُنشأة في لوحة التحكم رابط قصير، لذا يُرجع تغيير `link.url` فيها `422`.

## غير مدعوم عبر API

ميزات لوحة التحكم هذه ليست جزءًا من API الإصدار v1. تُحذف الحقول غير المعروفة دون خطأ، لذا لا يكون لإرسالها أي تأثير.

| الحقل | الوصف |
| - | - |
| `appName` | الاسم المعروض لرمز QR لرابط التطبيق. تعرض رموز QR لرابط التطبيق المُنشأة عبر API رابط المتجر في قائمة لوحة التحكم. |
| `isStatic` | رمز QR ثابت دون رابط قصير. لكل رمز QR تُنشئه API رابط قصير، لذا يمكن تعديله وتتبعه بعد الطباعة (باستثناء `wifi`). |
| `pdfBundle` | رمز QR من نوع PDF يضم ملفين أو أكثر. لا تُنشئ API إلا رموز QR لملف PDF واحد. |
| `imageGallery` | رمز QR للصور يضم صورتين أو أكثر. لا تُنشئ API إلا رموز QR لصورة واحدة. |

لا يزال بالإمكان قراءة الحزم والمعارض المُنشأة في لوحة التحكم وإيقافها مؤقتًا وحذفها عبر API، لكن لا يمكن تغيير ملفاتها عبرها.

## المشكلات الشائعة

> [accordion] 422 Invalid destination URL
>
> يستخدم `link.url` مخططًا لا يستطيع الرابط القصير إعادة التوجيه إليه، مثل `geo:` أو `smsto:` أو `matmsg:` أو `tel:`. استخدم الصيغ الواردة في هذه الصفحة.

> [accordion] 400 Missing destination URL
>
> `data` فارغة ولا يوجد `link.url`. بالنسبة إلى `app`، اضبط واحدًا على الأقل من `link.ios` أو `link.android` أو `link.url` أو `data`.

> [accordion] قيمة data في الاستجابة رابط قصير، وليست رابطي
>
> في أنواع الروابط، تكون `data` المحفوظة هي الرابط القصير. اقرأ الوجهة من `url`.

> [accordion] الصفحة المقصودة تفتقد تفاصيل من حمولتي
>
> لا تقرأ الصفحة إلا الحقول وصيغ الأسطر المدرجة للنوع. تُحفظ الحقول الأخرى لكنها لا تُعرض.

## الخطوات التالية

> [card] [رموز QR](https://docs.getqr.com/ar/api/endpoints/qr-codes.md)

> [card] [الملفات](https://docs.getqr.com/ar/api/endpoints/files.md)

> [card] [التخصيص](https://docs.getqr.com/ar/api/guides/customization.md)

> [card] [قواعد الوصول](https://docs.getqr.com/ar/api/guides/access-rules.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.