الأحداث
تغذية أحداث التثبيت بعد مؤشر، وقائمة أنواع الأحداث.
عمليات هذه المجموعة مع قاعدة الوصول وقاعدة إعادة المحاولة والمعلمات والاستجابات. يحمل كل طلب مفتاحًا: Authorization: Bearer <key> (راجع «المصادقة»).
العمليات
قراءة أحداث التثبيت
GET HEAD /api/v1/events
الوصول: أي مفتاح أو جلسة صالحة · إعادة المحاولة: آمن للتكرار (قراءة)
يعيد، بدءًا من الأقدم، ما يصل إلى limit حدثًا (1–500، الافتراضي 100) بعد المؤشر after بصيغة CloudEvents 1.0: عمليات النشر والحذف، ومراجعات الملفات، وتسجيلات الحزم، والتعليقات التوضيحية، والمرفقات، والمراحل، والترقيات، وتغييرات الصور وnpm وGit LFS في كل مستودع يستطيع المستدعي سرده (artifact.list). من دون after تبدأ التغذية من أقدم حدث محفوظ. للمتابعة مرّر next بوصفه after: فهو يتقدّم أيضًا متجاوزًا الأحداث التي لا يراها المستدعي، بحد أقصى 5000 لكل طلب. يُبقي types الأنواع المسمّاة أو بادئات مثل artifact.*، وrepository مستودعًا واحدًا. يتلقى المؤشر الأقدم من oldest الرمز 410 events_cursor_expired، ومؤشر حقبة epoch أخرى (استُعيد الخادم من نسخة احتياطية) الرمز 409 events_epoch_changed؛ ويحمل كلاهما القيم الحالية epoch وoldest وhead في events. أزل التكرار بحسب id؛ فالحدث تلميح، واقرأ الحالة الحالية عبر المسارات المعتادة.
المعلمات
| الاسم | الموضع | النوع | مطلوب | القواعد |
|---|---|---|---|---|
after | الاستعلام | string | لا | يطابق النمط ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:(0|[1-9][0-9]{0,18})$; Event id or next of a page; without it the feed starts at oldest |
limit | الاستعلام | integer | لا | 1–500 |
types | الاستعلام | string | لا | عدد الأحرف: 2048 كحد أقصى; Comma-separated names or prefixes such as artifact.* |
repository | الاستعلام | string | لا | يطابق النمط ^[a-z0-9][a-z0-9_-]{0,63}$ |
الاستجابة 200
| الحقل | النوع | مطلوب | القواعد |
|---|---|---|---|
epoch | string (uuid) | نعم | — |
items | مصفوفة من object | نعم | عدد العناصر: 500 كحد أقصى |
items[].specversion | string | نعم | إحدى القيم: 1.0 |
items[].id | string | نعم | يطابق النمط ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:(0|[1-9][0-9]{0,18})$; معرّف الحدث، <epoch>:<position>؛ أزل التكرار به |
items[].source | string | نعم | — |
items[].type | string | نعم | — |
items[].subject | string | نعم | معرّف المُخرَج، أو المسار في أحداث الملفات |
items[].time | string (date-time) | نعم | — |
items[].datacontenttype | string | نعم | إحدى القيم: application/json |
items[].dataschema | string | نعم | — |
items[].partitionkey | string | نعم | repository:<repository>؛ تحافظ أحداث القسم الواحد على ترتيب تثبيتها |
items[].arkvoryposition | string | نعم | عدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية |
items[].arkvoryepoch | string (uuid) | نعم | — |
items[].data | object | نعم | بيانات النوع؛ مخطط JSON Schema الخاص بها في قائمة الأنواع |
next | string | نعم | يطابق النمط ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:(0|[1-9][0-9]{0,18})$ |
head | string | نعم | عدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية |
oldest | string | نعم | عدد صحيح بأرقام عشرية، يُرسَل كسلسلة نصية |
الاستجابات: 200, 400, 401, 403, 404, 409, 410, 422, 503, 507
مثال
curl -X GET "$ARKVORY_URL/api/v1/events" \
-H "Authorization: Bearer $ARKVORY_TOKEN"سرد أنواع الأحداث
GET HEAD /api/v1/events/types
الوصول: أي مفتاح أو جلسة صالحة · إعادة المحاولة: آمن للتكرار (قراءة)
يعيد كل نوع حدث يكتبه هذا الخادم: الاسم، وschemaVersion، والنطاق، والإذن الذي يحتاجه القارئ، والقسم الذي يحافظ على ترتيبه، ومخطط JSON Schema للحقل data. قيمة type في CloudEvents هي arkvory.<name>.v<schemaVersion>.
الاستجابة 200
| الحقل | النوع | مطلوب | القواعد |
|---|---|---|---|
items | مصفوفة من object | نعم | — |
items[].name | string | نعم | — |
items[].schemaVersion | integer | نعم | 1 على الأقل |
items[].scope | string | نعم | إحدى القيم: repository, system |
items[].permission | string | نعم | إحدى القيم: artifact.list, administrator |
items[].partition | string | نعم | — |
items[].description | string | نعم | — |
items[].dataSchema | object | لا | — |
الاستجابات: 200, 400, 401, 403, 404, 409, 422, 503, 507
مثال
curl -X GET "$ARKVORY_URL/api/v1/events/types" \
-H "Authorization: Bearer $ARKVORY_TOKEN"