اکثر برنامه ها برای منتشر شدن باید اجازه کاربر را جهت درج افزونه طبق فرایند احراز باز دریافت کنند.
ویژگی ها | توضیحات |
---|---|
پرمیشن مورد نیاز برنامه | ADD_ON_CREATE |
Oauth Scope | POST_ADDON_CREATE.{POST_TOKEN} که در اینجا POST_TOKEN برابر با توکن آگهی میباشد (نمونه: POST_ADDON_CREATE.gZ5ZolKk) |
محدودیت تعداد فراخوانی | دارد |
نکته: تنها اعتبار سنجی که انجام نمیشود توکن آگهی میباشد در صورت اشتباه بودن این مقدار افزونه ساخته نمیشود و در ریسپانس قبول شده خواهید دید پس از صحت توکن اطمینان حاصل نمائید.
sequenceDiagram
actor Third-Party
participant Kenar
participant Divar Services
Third-Party->>Kenar: Sends Create Addon Request with appropriate fields
Note over Kenar: Validates the request
alt request data is invalid
Kenar--x Third-Party: Responds with appropriate validation error
else request data is valid
Kenar->> Third-Party: Responds with empty JSON object and an Ok status code.
end
loop until attachment
Kenar->>Divar Services: Sends Attach Addon Request
end
برای الصاق افزونه روی آگهی لازم است API زیر صدا زده شود. برای آگاهی از نحوه ساخت ویجتها و قراردادن لینک در آنها، میتوانید به قسمت ویجتها مراجعه نمائید.
```http request POST https://api.divar.ir/v2/open-platform/addons/post/ Content-Type: application/json x-api-key:
x-access-token:
{ “widgets”: [ { “description_row”: { “text”: “این یک دسکریپشن رو هست”, “has_divider”: false, “expandable”: false, } “semantic_paths”: { “a sample sentence”: “text” } }, { “event_row”: { “title”: “یه تایتل مناسب”, “subtitle”: “یه زیر تایتل مناسب تر”, “label”: “یه لیبل زیبا”, “image_id”: “someuuid.jpg”, “has_divider”: true, “icon_name”: “ADD” “action”: { “open_direct_link”: “https://google.com” } }, “semantic_paths”: { “user_face”: “image_id” } } ], “semantic”: { “identity_verification_result”: “FACE_AND_MATCHED”, “cowsay”: “salam” }, “notes”: “any notes you want to get back on list api” }
- فیلد `widgets` باید با ویجت های مورد نظر پر شود.
- فیلد `notes`
برای یاداشت های مورد نظرتون روی افزونه میباشد میتوانید با
[تابع لیست](/kenar-docs/addons/list.html)
این اطلاعات رو پس بگیرید.
- فیلد `semantic` برای اطلاعات معنایی می باشد که در [اینجا](/semantic/semantic_data.md) بیشتر توضیح داده شده است.
### ریسپانس
```json
{}
اکثر اپ ها برای منتشر شدن باید اجازه کاربر را جهت درج افزونه طبق فرایند احراز باز دریافت کنند. برای درج افزونه تایید شده میتوانید با توجه به نیاز، از دو اسکوپ زیر استفاده کنید.
اسکوپ احراز باز | توضیحات | مثال |
---|---|---|
POST_ADDON_CREATE.{POST_TOKEN} | درج افزونه بر روی یک اگهی کاربر با توکن gZ5ZolKk | POST_ADDON_CREATE.gZ5ZolKk |
USER_POSTS_ADDON_CREATE | درج افزونه بر روی تمام آگهی های یک کاربر | USER_POSTS_ADDON_CREATE |