MoroccoAPIالتوثيق
مرجع الواجهة

اختر مورداً. حدّد المعاملات. جرّب الطلب.

دون مفتاح APIإجابات JSONCORS مفتوح

السكان حسب الإقليم

GET/api/v2/population/subdivisions

معلومة مهمة. إحصاء 2024 والسلاسل التاريخية للمندوبية السامية للتخطيط. راجع meta لمعرفة المصدر والتاريخ.

فهم السياق

RGPH هو الإحصاء العام للسكان الذي تنجزه المندوبية السامية للتخطيط HCP. المقيم ليس بالضرورة مغربي الجنسية. مثال توضيحي: 100 مقيم، منهم 95 مغربياً و5 أجانب، يعني مجموعاً من 100؛ لا تجمعهم مرة ثانية. الأرقام توضيحية.

المعاملات

02
integerاختياري · الاستعلام

عدد النتائج في الصفحة. 100 افتراضياً، و500 كحد أقصى.

الحد الأدنى: 1الحد الأقصى: 500القيمة الافتراضية: 100
integerاختياري · الاستعلام

عدد النتائج المطابقة المراد تجاوزها. يبدأ من 0.

الحد الأدنى: 0الحد الأقصى: 2147483647القيمة الافتراضية: 0
فهم الإجابة

data: النتائج المطلوبة، في كائن أو قائمة.

meta: مصادر البيانات ورخصتها وتواريخها. تعني null أن القيمة غير معروفة أو غير متاحة.

meta.pagination: القوائم: 100 نتيجة افتراضياً، و500 كحد أقصى. استخدم limit وoffset؛ تكون meta.pagination.next_offset بقيمة null في الصفحة الأخيرة.

مثال توضيحي: مع limit=10 وoffset=0 تتضمن الصفحة الأولى 10 نتائج على الأكثر. إذا كانت next_offset تساوي 10، اطلب التالية بـoffset=10 والمرشحات نفسها. توقف عندما تصبح next_offset بقيمة null.

API v2 هو المسار المرجعي. تبقى مسارات /api/v1 القديمة أسماء بديلة متوافقة مع السلوك المنشور حالياً، بما فيه تقسيم الصفحات؛ لم يُحدد موعد لحذفها.

حقول الإجابة 14

تشير [] إلى كل عنصر في القائمة. تعني null غير معروف أو غير متاح، ولا تعني صفراً. لغة الدليل لا تترجم قيم المصادر.

dataobject[]

النتيجة المطلوبة: كائن واحد أو قائمة.

data[].codestring

معرّف المورد في MoroccoAPI؛ استعمله في روابط المورد المناسبة.

data[].hcp_codestring

رمز المندوبية السامية للتخطيط، جهاز الإحصاء المغربي. احتفظ به كنص للحفاظ على الأصفار الأولى.

data[].typestring

نوع المورد. تظهر القيم الممكنة أسفله.

القيم المقبولة: "province_or_prefecture"

data[].administrative_typestring

province (إقليم) أو prefecture (عمالة): فئتان في المستوى الإداري نفسه تحت الجهة.

القيم المقبولة: "province" "prefecture"

data[].nameobject

اسم المورد، وقد يكون موزّعاً حسب اللغة.

data[].name.arstring

القيمة بالعربية؛ null عند غياب الترجمة.

data[].name.frstring

القيمة بالفرنسية؛ null عند غياب الترجمة.

data[].name.enstring | null

القيمة بالإنجليزية؛ null عند غياب الترجمة.

data[].region_codestring

معرّف الجهة الأم، وهي المستوى الإداري الأول في المغرب.

data[].populationinteger

إجمالي السكان المحصيين في هذه الوحدة الإدارية.

data[].moroccansinteger

عدد السكان ذوي الجنسية المغربية في النطاق المحدد.

data[].foreignersinteger

عدد السكان ذوي الجنسية الأجنبية في النطاق المحدد.

data[].householdsinteger

عدد الأسر المحصاة؛ قد تتكون الأسرة من شخص واحد أو عدة أشخاص.

بنية البيانات
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "code",
          "hcp_code",
          "type",
          "administrative_type",
          "name",
          "region_code",
          "population",
          "moroccans",
          "foreigners",
          "households"
        ],
        "properties": {
          "code": {
            "type": "string",
            "pattern": "^[a-z0-9]+(?:-+[a-z0-9]+)*$"
          },
          "hcp_code": {
            "type": "string",
            "pattern": "^[0-9]{2}\\.[0-9]{3}$"
          },
          "type": {
            "enum": [
              "province_or_prefecture"
            ]
          },
          "administrative_type": {
            "enum": [
              "province",
              "prefecture"
            ]
          },
          "name": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "ar",
              "fr",
              "en"
            ],
            "properties": {
              "ar": {
                "type": "string"
              },
              "fr": {
                "type": "string"
              },
              "en": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "string",
                    "nullable": true,
                    "enum": [
                      null
                    ]
                  }
                ]
              }
            }
          },
          "region_code": {
            "type": "string"
          },
          "population": {
            "type": "integer",
            "minimum": 0
          },
          "moroccans": {
            "type": "integer",
            "minimum": 0
          },
          "foreigners": {
            "type": "integer",
            "minimum": 0
          },
          "households": {
            "type": "integer",
            "minimum": 0
          }
        }
      }
    },
    "meta": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "dataset",
        "total",
        "license",
        "retrieved_at",
        "transformation_version",
        "sources",
        "pagination"
      ],
      "properties": {
        "dataset": {
          "enum": [
            "subdivision-population"
          ]
        },
        "total": {
          "type": "integer",
          "minimum": 0
        },
        "license": {
          "enum": [
            "CC-BY-4.0"
          ]
        },
        "retrieved_at": {
          "enum": [
            "2026-10-05"
          ]
        },
        "transformation_version": {
          "enum": [
            "2.0.0"
          ]
        },
        "sources": {
          "type": "array",
          "minItems": 1,
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "dataset",
              "producer",
              "source_url",
              "resource_url",
              "license",
              "source_updated_at"
            ],
            "properties": {
              "dataset": {
                "type": "string"
              },
              "producer": {
                "type": "string"
              },
              "source_url": {
                "type": "string",
                "format": "uri"
              },
              "resource_url": {
                "type": "string",
                "format": "uri"
              },
              "license": {
                "enum": [
                  "CC-BY-4.0"
                ]
              },
              "source_updated_at": {
                "type": "string",
                "format": "date"
              }
            }
          }
        },
        "pagination": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "limit",
            "offset",
            "count",
            "has_more",
            "next_offset"
          ],
          "properties": {
            "limit": {
              "type": "integer",
              "minimum": 1,
              "maximum": 500
            },
            "offset": {
              "type": "integer",
              "minimum": 0,
              "maximum": 2147483647
            },
            "count": {
              "type": "integer",
              "minimum": 0,
              "maximum": 500
            },
            "has_more": {
              "type": "boolean"
            },
            "next_offset": {
              "anyOf": [
                {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 2147483647
                },
                {
                  "type": "string",
                  "nullable": true,
                  "enum": [
                    null
                  ]
                }
              ]
            }
          }
        }
      }
    }
  }
}
المصادر وتقسيم الصفحات 19
metaobject

سياق النتيجة: المصادر والتواريخ والرخصة وتقسيم الصفحات عند الاقتضاء.

meta.datasetstring

اسم مجموعة البيانات الخاصة بالنتيجة أو المصدر.

القيم المقبولة: "subdivision-population"

meta.totalinteger

عدد النتائج المطابقة للمرشحات قبل تقسيم الصفحات؛ وليس حجم هذه الصفحة.

meta.licensestring

رخصة إعادة الاستخدام. تعني mixed وجود رخص مختلفة: راجع كل مصدر.

القيم المقبولة: "CC-BY-4.0"

meta.retrieved_atstring

تاريخ جلب المشروع لملف المصدر؛ وليس تاريخ رصد البيانات.

القيم المقبولة: "2026-10-05"

meta.transformation_versionstring

إصدار قواعد تحويل مجموعة البيانات؛ مستقل عن إصدار الواجهة.

القيم المقبولة: "2.0.0"

meta.sourcesobject[]

المصادر المستخدمة لهذه النتيجة مع الجهات المنتجة والرخص.

meta.sources[].datasetstring

اسم مجموعة البيانات الخاصة بالنتيجة أو المصدر.

meta.sources[].producerstring

الجهة التي تنشر البيانات الأصلية.

meta.sources[].source_urlstring

صفحة نشر المصدر أو التعريف ببياناته.

meta.sources[].resource_urlstring

رابط الملف أو المورد المستخدم فعلياً.

meta.sources[].licensestring

رخصة إعادة الاستخدام. تعني mixed وجود رخص مختلفة: راجع كل مصدر.

القيم المقبولة: "CC-BY-4.0"

meta.sources[].source_updated_atstring

آخر تحديث معلن من المصدر؛ وليس تاريخ جلب الملف.

meta.paginationobject

معلومات لتصفّح نتائج القائمة صفحة بصفحة.

meta.pagination.limitinteger

العدد الأقصى المطلوب في الصفحة: 100 افتراضياً و500 كحد أقصى.

meta.pagination.offsetinteger

عدد النتائج المتجاوزة قبل هذه الصفحة بعد التصفية. تبدأ الصفحة الأولى من 0.

meta.pagination.countinteger

عدد النتائج الموجودة فعلياً في هذه الصفحة.

meta.pagination.has_moreboolean

تكون true إذا بقيت صفحة أخرى من النتائج.

meta.pagination.next_offsetinteger | null

قيمة offset للصفحة التالية؛ null عند النهاية. احتفظ بالمرشحات نفسها.

الأخطاء
  • 400: معامل غير صالح أو مفقود.

تتضمن الأخطاء error.code وerror.message وerror.request_id.

errorobject

تفاصيل الطلب الفاشل؛ تحل محل data وmeta.

error.codestring

رمز ثابت للخطأ، مثل RESOURCE_NOT_FOUND؛ استعمله في منطق التطبيق.

error.messagestring

شرح مقروء للخطأ؛ استعمل code في منطق التطبيق.

error.request_idstring

معرّف هذا الطلب، يفيد عند الإبلاغ عن مشكلة.

طلبك

GET · JSON

العنوان الأساسي

الإجابة

ستظهر الإجابة الفعلية هنا.

تغيّر اللغة نص التوثيق فقط، دون مفاتيح JSON أو قيم المصادر.