رفتن به محتوای اصلی

تقویم‌ها

هر کاربر می‌تواند چند تقویم داشته باشد. تقویم‌ها مستقل از هم هستند؛ هر رویداد به یکی از آن‌ها تعلق دارد (الزامی) و هر وظیفه می‌تواند به یکی از آن‌ها وصل شود (اختیاری).

تقویم فقط از طریق همگام‌سازی در دسترس است

API مسیرِ REST مستقل (CRUD) برای Calendar ندارد؛ کلاینت‌ها (اندروید و وب) آن را فقط از طریق /api/sync/* می‌خوانند و می‌نویسند — دلیلش را در «چرا فقط sync؟» بخوانید.

فیلدها

  • name، description، color (عدد صحیح ARGB)، emoji
  • calendarType: JALALI یا GREGORIAN
  • isDefault / isVisible: تقویم پیش‌فرض و وضعیت نمایش
  • uid و version: برای همگام‌سازی — جزئیاتشان در صفحهٔ همگام‌سازی

تقویم پیش‌فرض

وقتی کاربر ساخته می‌شود، یک تقویم پیش‌فرض با نام «تقویم اصلی» خودکار برایش ساخته می‌شود.

اما ارجاعِ تقویم برای رویداد اجباری است و هیچ جایگزینِ خودکاری وجود ندارد. در push، رویدادی که calendarUid ندارد خطای per-item با پیامِ calendarUid required for create می‌گیرد و اشاره به calendarUid ناشناس هم خطای unknown calendarUid می‌دهد. تقویمِ پیش‌فرض یک تقویمِ معمولی است که از پیش ساخته شده است؛ سرور هرگز رویدادی را خودبه‌خود به آن منتقل نمی‌کند.

اشتراک‌گذاری

با مدل CalendarShare می‌توانید یک تقویم را با کاربران دیگر به اشتراک بگذارید و سطح دسترسی را هم تعیین کنید. جزئیاتش در schema پایگاه داده آمده است.

تمام پاسخ‌ها از envelope استاندارد { success, data } پیروی می‌کنند. برای اشکالِ دقیق و نمونه‌ها به مرجع API مراجعه کنید.