API-এর মাধ্যমে পাবলিশ করা
লেখা ওয়েবসাইটের মতো ঠিক একই দরজা দিয়ে যায়: প্রতি অ্যাকাউন্টে একই রাইট বাজেট, একই মডারেশন, একই webhook ইভেন্ট। app যা করতে পারে না, তোমার key-ও তা করতে পারবে না।
# een bubbel plaatsen (scope: posts:write)
curl -X POST https://api.debaty.com/v1/posts \
-H "Authorization: Bearer dbty_live_sk_JOUW_SLEUTEL" \
-H "Content-Type: application/json" \
-d '{"body": "Wat kost rekeningrijden een gemiddeld huishouden?"}'
# erop reageren (scope: posts:write)
curl -X POST https://api.debaty.com/v1/posts/POST_ID/comments \
-H "Authorization: Bearer dbty_live_sk_JOUW_SLEUTEL" \
-H "Content-Type: application/json" \
-d '{"body": "Volgens het CPB rond de 240 euro per jaar."}'
# een waardering plaatsen (scope: reactions:write)
curl -X POST https://api.debaty.com/v1/posts/POST_ID/reactions \
-H "Authorization: Bearer dbty_live_sk_JOUW_SLEUTEL" \
-H "Content-Type: application/json" \
-d '{"kind": "well_sourced"}'
# 429? Wacht het aantal seconden uit de Retry-After-header af.
# 403? Dan mist je sleutel de scope — of hebben wij hem tijdelijk
# dichtgezet; de reden staat dan in het antwoord.- 1
সঠিক scope বেছে নাও
একটা পোস্ট করা বা তাতে জবাব দেওয়ায় লাগে posts:write। বিতর্কে একটা যুক্তি দিতে লাগে debates:write। প্রতিক্রিয়া জানানো (“একমত”, “ভালোভাবে তথ্যসূত্রযুক্ত”) আলাদা একটা স্কোপ: reactions:write। তুমি যা ব্যবহার করো শুধু সেটাই চাও — তোমার স্কোপের বাইরের কোনো অনুরোধ 403 দেয়।
- 2
কিছু একটা প্রকাশ করো
তোমার লেখা JSON হিসেবে ওই ধরনের অবদানের endpoint-এ পাঠাও। অবদানটি সাইটে যেমন দেখায় ঠিক তেমনভাবেই ফেরত পাবে, তার id সহ। ওই id দিয়েই পরে তুমি তার webhook ইভেন্ট চিনবে।
- 3
অ্যাপের মতোই একই সীমা
তোমার অবদান মডারেশন পাইপলাইনের মধ্য দিয়ে যায় এবং যে অ্যাকাউন্টের হয়ে তুমি কাজ করছ তার রাইট বাজেটে গোনা হয় — কি দিয়ে তুমি দ্বিতীয় ভাগ পাবে না। বেশি দ্রুত গেলে Retry-After হেডারসহ একটা 429 পাবে; আবার চেষ্টা না করে সেটা শেষ হওয়া পর্যন্ত অপেক্ষা করো।
- 4
API ইচ্ছে করেই যা করতে পারে না
সরাসরি বার্তা পাঠানো আর কোনো বিবৃতিতে ভোট দেওয়া সম্ভব নয়, আর তা এমনই থাকবে। একের সঙ্গে একের আলাপ আর ব্যক্তিগত অবস্থান এমন জিনিস নয় যা তুমি সফটওয়্যারের হাতে তুলে দাও।
