Гэрээ

Эх сурвалж бүтээгдэхүүн өөрийн баримтаа мэдэгдэнэ, Календарь түүний хуваарийг хариуцна. Тэдний хооронд интеграцийн тоотой хамт өсдөггүй нарийн интерфейс байдаг.

Үйл явдлын онцлог бол гурвал

Бүтээгдэхүүн, объектын төрөл, түүний танигч. Бүтээгдэхүүн Календарийн дотоод танигчийг хадгалах шаардлагагүй: тэр үйл явдлыг өөрт байгаагаар хаяглана.

(product_id, entity_type, entity_id)
  • Тэр гурвалаар дахин upsert хийвэл бичлэг шинэчлэгдэнэ, хоёр дахь нь үүсэхгүй
  • Устгасны дараах дахин remove бол алдаа биш, хоосон үйлдэл
  • Үйл явдлыг зөвхөн өөрийн түлхүүрээр үүсгэсэн бүтээгдэхүүн устгаж чадна
  • Салгах токен шаардлагагүй: үйл явдал яг нэг эзэн бүтээгдэхүүнтэй

Гэрээний цэгүүд

АргаЗориулалт
POST /Calendar/upsertБүтээгдэхүүний үйл явдал үүсгэх эсвэл шинэчлэх
POST /Calendar/removeҮйл явдлыг онцлогийн гурвалаар устгах
GET /Calendar/listByEntityБүтээгдэхүүний тодорхой объектын үйл явдал
GET /Calendar/eventsХувийн болон багийн харагдацад зориулсан түүвэр
GET /Calendar/freebusyАжилтан болон нөөцийн завгүй байдал
GET /Calendar/expandДавталтыг тодорхой огноо болгон задлах
POST /Calendar/findSlotsНийтлэг сул цонх сонгох
POST /Calendar/attachConferenceҮйл явдалд A3.Meet өрөө бэлтгэх
POST /Calendar/invite, /Calendar/rsvpОролцогчийг урих болон түүний хариу
GET /Calendar/ics/{token}Гадны клиентийн зөвхөн уншихад захиалга

Тээврийн зөвшилцөл

  • Толгой хэсэг

    API_KEY, A3Session, AccountId, ProductId болон Language-Code. Бүтээгдэхүүний дуудалт бүтээгдэхүүний түлхүүрээр, хэрэглэгчийн дуудалт A3.ID сессээр зөвшөөрөгдөнө.

  • Хариултын дугтуй

    Төлөв, код, алдааны текст, ачаалалтай нэгдсэн дугтуй. Алдаа мөн тэр дугтуйд ирж, Language-Code-оор орчуулагдсан байна.

  • Жагсаалт

    Жагсаалт бичлэгийн нийт тоотой хамт буцна, шүүлт болон хуудаслалт хүсэлтийн шүүлтүүрээр явна.

  • Баримт бичиг

    Зургаан хэл дээр Scalar болон Swagger. CalDAV тусад нь тайлбарлагдсан: энэ бол JSON гэрээ биш, WebDAV дээрх протокол.

Зөрчлийг үйл явдлын хувилбар шийднэ

Шинэчлэл бүр дуудагч талын сүүлд харсан хувилбарыг илгээнэ. Хэрэв тэр одоогийнхоос зөрвөл сервер 409 код болон бодит төлөвийг буцаана. Зөрчлийг сервер биш, дуудагч тал шийднэ.

409 Conflict
  • Бүтээгдэхүүнд ердийн боловсруулалт нь шинэ хувилбараар давтах: тэр талбарыг бүрэн эзэмшдэг
  • Хүнд аль хувилбарыг үлдээх сонголттой харьцуулах цонх харагдана
  • Тэр хувилбар CalDAV протоколын ETag үүргийг гүйцэтгэнэ, хоёр дахь механизм байхгүй
  • Энэ бол CRDT ч биш, бичих түгжээ ч биш: загвар бодит ачаалалд тохирсон

Зөвхөн REST биш

  • CalDAV

    Календарь илрүүлэх, муж сонгох, бичих, устгах аргатай RFC 4791-ээр тусдаа зам. Бүтээгдэхүүний үйл явдал харагдана, гэхдээ түүнд бичихийг татгалзана.

  • Амьд суваг

    Нэг чигт өсдөг курсортой өөрчлөлтийн бүртгэл болон бодит цагийн хаб. Нээлттэй таб шууд шинэчлэгдэнэ, сүлжээгүй клиент тэр курсороор гүйцнэ.

  • Виджет

    Өөрийн интерфейст сүлжээ хэрэгтэй бүтээгдэхүүнд зориулсан, үйл явдал болон завгүй байдлын түүвэр дээрх суулгах хүрээ. Хүрээ бүтээгдэхүүний серверээс авсан богино хугацааны токеноор нээгдэнэ.

  • Хязгаарлалт

    Бүтээгдэхүүн тус бүрийн бичих давтамжийн хязгаар болон тохиолдол шинжлэхэд зориулсан анхдагч бус түлхүүрийн хүсэлтийн бүртгэл.

Интеграцийн скоуп

Интеграц дансны эзний тодорхой зөвшөөрөлгүйгээр компанийн бүх календарьт хандаж чадахгүй.

  • ReadҮйл явдал авах
  • PushӨөрийн үйл явдлыг үүсгэх, шинэчлэх
  • FreeBusyҮйл явдлын дэлгэрэнгүйгүйгээр завгүй байдлыг асуух
  • ShareКалендарийн нийтийн хандалтыг удирдах

Баримт бичиг нээх

Цэг, загвар болон алдааны кодын зургаан хэл дээрх бүрэн тайлбар.