الانتقال إلى المحتوى الرئيسي
GetQR API في مرحلة تجريبية (beta) ومتاحة لمساحات عمل مختارة. قد تتغير التفاصيل قبل الإصدار العام.
لكل رمز QR قيمة qrType، ويحدد النوع ما يجب أن تحتويه data. يسرد هذا الدليل صيغة كل نوع، وجسم طلب يعمل، وما يمكنك تغييره بعد طباعة الرمز. الأمثلة أجسام طلبات لـ إنشاء رمز QR. أرسلها هكذا:

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

كيف يعمل رمز QR

كل رمز QR هو رابط قصير مع حمولة. يحمل المحتوى حقلان: قواعد تنطبق على كل الأنواع:
  • القيم الافتراضية. عند الإنشاء، تصبح قيمة 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.
الحدود المميّزة بـ المحرر أدناه هي ما يفرضه محرر لوحة التحكم. تقبل API الحمولات التي تتجاهلها، لكنها قد تظهر بشكل غريب في الصفحة المقصودة أو في المحرر.

موقع ويب

qrType: "website". دليل لوحة التحكم: رمز QR لموقع ويب.
Request body
الأخطاء:
  • 422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".
  • 422 Invalid destination URL

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

qrType: "feedback". دليل لوحة التحكم: رمز QR للآراء والتقييمات. data هي رابط http(s) لنموذج الآراء، مثل Google Form أو صفحة تقييمات. يعمل كل ما عدا ذلك كما في موقع ويب.
Request body

الدفع

qrType: "payment". دليل لوحة التحكم: رمز QR للدفع. data هي رابط الدفع لدى المزوّد، على سبيل المثال:
يتعرّف محرر لوحة التحكم على هذه النطاقات: paypal.me وpaypal.com/paypalme وcash.app وvenmo.com وbuy.stripe.com وstripe.com وsquare.link وpayoneer.com. في PayPal، يكون المبلغ هو المقطع الأخير من المسار. يعمل أي رابط http(s) آخر أيضًا، لكن المحرر لن يقسمه إلى مزوّد ومبلغ. يعمل كل ما عدا ذلك كما في موقع ويب.
Request body

WhatsApp

qrType: "whatsapp". دليل لوحة التحكم: رمز QR لـ WhatsApp. data هي رابط wa.me: الرقم الدولي بالأرقام دون +، مع نص معبأ مسبقًا اختياريًا.
لا يتحقق الخادم إلا من كونه رابط http(s). تقرأ لوحة التحكم أيضًا روابط api.whatsapp.com/send. يعمل كل ما عدا ذلك كما في موقع ويب.
Request body

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

qrType: "location". دليل لوحة التحكم: رمز QR للموقع الجغرافي. data هي رابط خريطة. استخدم هذه الصيغة ليبقى رمز QR قابلًا للتعديل في لوحة التحكم (query_place_id اختياري):
يعيد أي رابط http(s) آخر التوجيه أيضًا. يجتاز رابط URI من نوع geo: فحص data لكنه يُرفض كوجهة، لذا لا تستخدمه. يعمل كل ما عدا ذلك كما في موقع ويب.
Request body

رابط التطبيق

qrType: "app". دليل لوحة التحكم: رمز QR لرابط التطبيق.
Request body
الأخطاء:
  • 422 Invalid URL
  • 400 Missing destination URL

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

qrType: "email". دليل لوحة التحكم: رمز QR للبريد الإلكتروني.
Request body
الأخطاء:
  • 422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".

SMS

qrType: "sms". دليل لوحة التحكم: رمز QR للرسائل النصية SMS.
Request body
الأخطاء:
  • 422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".

WiFi

qrType: "wifi". دليل لوحة التحكم: رمز QR لشبكة WiFi.
Request body
الأخطاء:
  • 422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
لا تبدّل نوع رمز QR مطبوع لشبكة WiFi. تحتفظ الرموز المطبوعة بالشبكة القديمة.

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

qrType: "pdf" أو "image" أو "video". أدلة لوحة التحكم: PDF، الصور، الفيديو. ملف واحد لكل رمز QR: حزم PDF ومعارض الصور غير متاحة في API. راجع غير مدعوم عبر API.
لرفع الملف والحصول على fileId الخاص به، راجع الملفات.

vCard

qrType: "vcard". دليل لوحة التحكم: رمز QR لبطاقة vCard. لا تقرأ الصفحة المقصودة والمحرر إلا صيغ الأسطر أدناه. تُحفظ الصيغ الأخرى، مثل 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.
Request body
الأخطاء:
  • 422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".

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

qrType: "social". دليل لوحة التحكم: رمز QR لوسائل التواصل الاجتماعي. حقول data:
Request body
الأخطاء:
  • 422 Expected a JSON object describing the social profile page for qrType "social".

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

qrType: "multilink". دليل لوحة التحكم: رمز QR متعدد الروابط. حقول data هي حقول وسائل التواصل الاجتماعي نفسها، إلا أن firstName وlastName وsummary تُستبدل بما يلي: في customItems، يكون logoFileId اختياريًا: تظهر أيقونة بديلة. المحرر: رابط تواصل واحد على الأقل أو عنصر مخصص واحد غير فارغ.
Request body
الأخطاء:
  • 422 Expected a JSON object describing the multi-link page for qrType "multilink".

الفعاليات

qrType: "event". دليل لوحة التحكم: رمز QR للفعاليات. حقول data:
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
Request body
الأخطاء:
  • 422 Expected a JSON object describing the event page for qrType "event".

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

سجّل ملفًا عبر الملفات، وارفعه، ثم مرّر fileId الخاص به. استخدم الغرض المطابق للاستخدام:
  • pdf، image، video. محتوى رمز QR من نوع PDF أو صورة أو فيديو.
  • logo. صور الملفات الشخصية، وشعارات الصفحات، وأيقونات الروابط المخصصة، والشعارات في الوسط.
تُحذف الملفات التي لا تُرفق أبدًا برمز QR بعد فترة سماح. أخطاء fileId، التي تُرجع عند الإنشاء وعند PATCH إذا أُرسل fileId: لا يُتحقق من معرّفات الملفات داخل الحمولة (fileId، pageLogoFileId، customItems[].logoFileId، أسطر X-GETQR-*-FILEID). ولا تظهر إلا إذا رُفعت بالغرض logo. يطالب بها رمز QR، فلا تمسّها عملية التنظيف.

تبديل النوع

يمكنك تغيير qrType عبر تحديث رمز 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. تُحذف الحقول غير المعروفة دون خطأ، لذا لا يكون لإرسالها أي تأثير. لا يزال بالإمكان قراءة الحزم والمعارض المُنشأة في لوحة التحكم وإيقافها مؤقتًا وحذفها عبر API، لكن لا يمكن تغيير ملفاتها عبرها.

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

يستخدم link.url مخططًا لا يستطيع الرابط القصير إعادة التوجيه إليه، مثل geo: أو smsto: أو matmsg: أو tel:. استخدم الصيغ الواردة في هذه الصفحة.
data فارغة ولا يوجد link.url. بالنسبة إلى app، اضبط واحدًا على الأقل من link.ios أو link.android أو link.url أو data.
في أنواع الروابط، تكون data المحفوظة هي الرابط القصير. اقرأ الوجهة من url.
لا تقرأ الصفحة إلا الحقول وصيغ الأسطر المدرجة للنوع. تُحفظ الحقول الأخرى لكنها لا تُعرض.

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

رموز QR

الملفات

التخصيص

قواعد الوصول