Гэрээ
Эх сурвалж бүтээгдэхүүн өөрийн баримтаа мэдэгдэнэ, Календарь түүний хуваарийг хариуцна. Тэдний хооронд интеграцийн тоотой хамт өсдөггүй нарийн интерфейс байдаг.
Үйл явдлын онцлог бол гурвал
Бүтээгдэхүүн, объектын төрөл, түүний танигч. Бүтээгдэхүүн Календарийн дотоод танигчийг хадгалах шаардлагагүй: тэр үйл явдлыг өөрт байгаагаар хаяглана.
(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Календарийн нийтийн хандалтыг удирдах
Баримт бичиг нээх
Цэг, загвар болон алдааны кодын зургаан хэл дээрх бүрэн тайлбар.