بيانات قنصلية
معلومة مهمة. دليل جُمع في 31 أكتوبر 2026: 56 قنصلية في 15 بلداً. معلومات الاتصال غير متحقق منها آنياً، ولم تُحصل موافقة إعادة النشر.
فهم الإجابة
data: النتائج المطلوبة، في كائن أو قائمة.
meta: مصادر البيانات ورخصتها وتواريخها. تعني null أن القيمة غير معروفة أو غير متاحة.
API v2 هو المسار المرجعي. تبقى مسارات /api/v1 القديمة أسماء بديلة متوافقة مع السلوك المنشور حالياً، بما فيه تقسيم الصفحات؛ لم يُحدد موعد لحذفها.
حقول الإجابة 15
تشير [] إلى كل عنصر في القائمة. تعني null غير معروف أو غير متاح، ولا تعني صفراً. لغة الدليل لا تترجم قيم المصادر.
dataobjectالنتيجة المطلوبة: كائن واحد أو قائمة.
data.idstringمعرّف هذا العنصر في مجموعة البيانات؛ ليس بالضرورة رمزاً رسمياً.
data.nameobjectاسم المورد، وقد يكون موزّعاً حسب اللغة.
data.name.frstringالقيمة بالفرنسية؛ null عند غياب الترجمة.
data.countryobjectبلد استضافة القنصلية.
data.country.codestringرمز ISO لبلد الاستضافة من حرفين.
data.country.namestringاسم بلد الاستضافة بالفرنسية.
data.citystringالمدينة المذكورة في المصدر؛ ليست بالضرورة رمزاً إدارياً.
data.addressstring | nullالعنوان البريدي كما نُشر.
data.phonesobject[]أرقام الاتصال المؤسسية المحتفظ بها من المصدر.
data.phones[].rawstringقيمة المصدر بعد إزالة أجزاء أرقام المحمول المحددة؛ قد تبقى ملتبسة.
data.phones[].e164string | nullرقم الهاتف الدولي لبلد الاستضافة؛ null إذا كان ملتبساً أو غير صالح. لا يثبت إمكانية الاتصال.
data.websitestring | nullرابط الموقع الوارد في المصدر؛ null عند غيابه أو استبعاده أثناء المراجعة.
data.source_namesstring[]عناوين بطاقات المصدر المرتبطة، بما فيها السجلات المكررة المدمجة.
data.quality_flagsstring[]مشاكل معروفة: تكرار أو بيانات اتصال ناقصة أو هاتف ملتبس أو رابط مستبعد.
بنية البيانات
{
"type": "object",
"additionalProperties": false,
"required": [
"data",
"meta"
],
"properties": {
"data": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"name",
"country",
"city",
"address",
"phones",
"website",
"source_names",
"quality_flags"
],
"properties": {
"id": {
"type": "string",
"maxLength": 100,
"pattern": "^[a-z]{2}-[a-z0-9]+(?:-[a-z0-9]+)*$"
},
"name": {
"type": "object",
"additionalProperties": false,
"required": [
"fr"
],
"properties": {
"fr": {
"type": "string",
"minLength": 1
}
}
},
"country": {
"type": "object",
"additionalProperties": false,
"required": [
"code",
"name"
],
"properties": {
"code": {
"type": "string",
"pattern": "^[A-Z]{2}$"
},
"name": {
"type": "string",
"minLength": 1
}
}
},
"city": {
"type": "string",
"minLength": 1
},
"address": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "string",
"nullable": true,
"enum": [
null
]
}
]
},
"phones": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"raw",
"e164"
],
"properties": {
"raw": {
"type": "string",
"minLength": 1
},
"e164": {
"anyOf": [
{
"type": "string",
"pattern": "^\\+[1-9][0-9]{6,14}$"
},
{
"type": "string",
"nullable": true,
"enum": [
null
]
}
]
}
}
}
},
"website": {
"anyOf": [
{
"type": "string",
"format": "uri",
"pattern": "^https?://"
},
{
"type": "string",
"nullable": true,
"enum": [
null
]
}
]
},
"source_names": {
"type": "array",
"minItems": 1,
"items": {
"type": "string",
"minLength": 1
}
},
"quality_flags": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
}
},
"meta": {
"type": "object",
"additionalProperties": false,
"required": [
"dataset",
"total",
"license",
"terms_url",
"redistribution_status",
"retrieved_at",
"source_updated_at",
"transformation_version",
"coverage",
"sources"
],
"properties": {
"dataset": {
"enum": [
"moroccan-consulates"
]
},
"total": {
"type": "integer",
"minimum": 0
},
"license": {
"type": "string",
"nullable": true,
"enum": [
null
]
},
"terms_url": {
"type": "string",
"format": "uri"
},
"redistribution_status": {
"enum": [
"permission-not-obtained"
]
},
"retrieved_at": {
"type": "string",
"format": "date"
},
"source_updated_at": {
"type": "string",
"nullable": true,
"enum": [
null
]
},
"transformation_version": {
"type": "string",
"minLength": 1
},
"coverage": {
"type": "object",
"additionalProperties": false,
"required": [
"records",
"countries",
"complete",
"real_time",
"limitations"
],
"properties": {
"records": {
"type": "integer",
"minimum": 1
},
"countries": {
"type": "integer",
"minimum": 1
},
"complete": {
"enum": [
false
]
},
"real_time": {
"enum": [
false
]
},
"limitations": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
}
},
"sources": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"dataset",
"producer",
"source_url"
],
"properties": {
"dataset": {
"type": "string",
"minLength": 1
},
"producer": {
"type": "string",
"minLength": 1
},
"source_url": {
"type": "string",
"format": "uri"
}
}
}
}
}
}
}
}المصادر وتقسيم الصفحات 19
metaobjectسياق النتيجة: المصادر والتواريخ والرخصة وتقسيم الصفحات عند الاقتضاء.
meta.datasetstringاسم مجموعة البيانات الخاصة بالنتيجة أو المصدر.
القيم المقبولة:
"moroccan-consulates"meta.totalintegerعدد النتائج المطابقة للمرشحات قبل تقسيم الصفحات؛ وليس حجم هذه الصفحة.
meta.licensenullnull: لم يتم تحديد رخصة مفتوحة لهذا الدليل.
القيم المقبولة:
nullmeta.terms_urlstringشروط الاستخدام المنشورة في موقع المصدر.
meta.redistribution_statusstringpermission-not-obtained: لم تُحصل موافقة كتابية لإعادة النشر.
القيم المقبولة:
"permission-not-obtained"meta.retrieved_atstringتاريخ جلب المشروع لملف المصدر؛ وليس تاريخ رصد البيانات.
meta.source_updated_atnullآخر تحديث معلن من المصدر؛ وليس تاريخ جلب الملف.
القيم المقبولة:
nullmeta.transformation_versionstringإصدار قواعد تحويل مجموعة البيانات؛ مستقل عن إصدار الواجهة.
meta.coverageobjectالنطاق الجغرافي والزمني المتاح فعلياً.
meta.coverage.recordsintegerعدد القنصليات في النسخة كاملة قبل التصفية.
meta.coverage.countriesintegerعدد البلدان الممثلة في النسخة كاملة.
meta.coverage.completebooleanfalse: لم يتم التحقق من شمولية تغطية الشبكة القنصلية.
القيم المقبولة:
falsemeta.coverage.real_timebooleanتعني false أن المشاهدات تاريخية دون تحديث مباشر.
القيم المقبولة:
falsemeta.coverage.limitationsstring[]القيود المعروفة للمصدر أو التغطية؛ اقرأها قبل استخدام البيانات.
meta.sourcesobject[]المصادر المستخدمة لهذه النتيجة مع الجهات المنتجة والرخص.
meta.sources[].datasetstringاسم مجموعة البيانات الخاصة بالنتيجة أو المصدر.
meta.sources[].producerstringالجهة التي تنشر البيانات الأصلية.
meta.sources[].source_urlstringصفحة نشر المصدر أو التعريف ببياناته.
الأخطاء
400: معامل غير صالح أو مفقود.404: المورد غير موجود.
تتضمن الأخطاء error.code وerror.message وerror.request_id.
errorobjectتفاصيل الطلب الفاشل؛ تحل محل data وmeta.
error.codestringرمز ثابت للخطأ، مثل RESOURCE_NOT_FOUND؛ استعمله في منطق التطبيق.
error.messagestringشرح مقروء للخطأ؛ استعمل code في منطق التطبيق.
error.request_idstringمعرّف هذا الطلب، يفيد عند الإبلاغ عن مشكلة.