Facebook পোস্টিং API Page পোস্ট, Reels ও Stories

আপনার কোড বা AI এজেন্ট থেকে আপনার ম্যানেজ করা Facebook Page-এ টেক্সট, ছবি, ভিডিও, Reels ও Stories শিডিউল করুন, একটিমাত্র API কী দিয়ে, নিজের কোনো Meta অ্যাপ ছাড়াই।

বেস URL https://api.so-me.studio/v1 · প্রমাণীকরণ X-API-Key · socialMedia: FACEBOOK

Facebook-এ আপনি যা পাবলিশ করতে পারেন

এই মানগুলোর একটি postType হিসেবে পাঠান। প্রতিটি পোস্টে টেক্সট লাগবে, আর ছবি বা ভিডিও আপনার মিডিয়া লাইব্রেরি থেকে fileId দিয়ে যুক্ত করা হয়।

TEXT

শুধু টেক্সটের Page পোস্ট।

IMAGE

একটি ছবি।

MULTIPLE_IMAGES

একটি পোস্টে ২ থেকে ১০টি ছবি। CAROUSEL-ও গ্রহণ করা হয়।

VIDEO

একটি ভিডিও, সর্বোচ্চ ৪ ঘণ্টা।

REEL

একটি ভার্টিকাল ভিডিও Reel হিসেবে, সর্বোচ্চ ৯০ সেকেন্ড।

STORY

একটি ছবি বা ভিডিও Page Story হিসেবে।

Facebook পোস্ট শিডিউল করুন

মিডিয়া আপলোড করুন, তারপর পোস্ট তৈরি করুন। সঙ্গে সঙ্গে পাবলিশ করতে scheduledAt বাদ দিন।

  1. আপলোড URL রিজার্ভ করুন

    POST /v1/media/presign-upload ফাইলটি আপনার মিডিয়া লাইব্রেরিতে যোগ করে এবং একটি fileId ও একটি প্রি-সাইনড uploadUrl ফেরত দেয়।

    আপলোড URL রিজার্ভ করুন
    curl -X POST https://api.so-me.studio/v1/media/presign-upload \
      -H "X-API-Key: $SOME_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"files":[{"filename":"store-tour.mp4","mimetype":"video/mp4","size":26214400}]}'
    
    # → [{ "fileId": "…", "uploadUrl": "https://…", "fileSrc": "…", "s3Key": "…" }]
  2. ফাইল আপলোড করুন

    আপনি যে Content-Type ঘোষণা করেছেন ঠিক সেটি দিয়ে uploadUrl-এ বাইটগুলো PUT করুন। URL-টি এক ঘণ্টা বৈধ থাকে।

    ফাইল আপলোড করুন
    curl -X PUT "$UPLOAD_URL" \
      -H "Content-Type: video/mp4" \
      --upload-file ./store-tour.mp4
  3. পোস্ট তৈরি করুন

    fileId সহ POST /v1/posts করুন। রেসপন্স হলো SCHEDULED স্ট্যাটাসের পোস্টটি, আর এটি scheduledAt-এ একটি কিউয়ের মাধ্যমে পাবলিশ হয়, ব্যর্থ হলে কিউটি আবার চেষ্টা করে।

    পোস্ট তৈরি করুন
    curl -X POST https://api.so-me.studio/v1/posts \
      -H "X-API-Key: $SOME_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "socialMedia": "FACEBOOK",
        "postType": "REEL",
        "text": "আমাদের নতুন দোকান শনিবার খুলছে। ভেতরের প্রথম ঝলক।",
        "fileIds": ["<fileId>"],
        "scheduledAt": "2026-11-07T10:00:00Z",
        "firstComment": "দিকনির্দেশনা ও খোলার সময়: https://example.com/store"
      }'

ওয়ার্কস্পেসে একটিমাত্র Facebook অ্যাকাউন্ট থাকলে accountId ঐচ্ছিক। না হলে GET /v1/accounts থেকে একটি id দিন।

fileIds দিয়ে যুক্ত ফাইলগুলো কিউতে যাওয়ার আগে নিচের Facebook সীমার সাথে মিলিয়ে দেখা হয়। কোনো ফাইল নিয়ম ভাঙলে প্রতিটি ফাইলের রিপোর্টসহ 400 ফেরত আসে।

Facebook অপশন

যেসব ফিল্ড Facebook-এ পোস্ট কীভাবে পাবলিশ হবে তা বদলায়।

ফিল্ডএটি কী করে
accountIdযে Page-এ পোস্ট হবে, যেভাবে GET /v1/accounts তালিকাভুক্ত করে। মাত্র একটি Page যুক্ত থাকলে ঐচ্ছিক।
firstCommentপোস্ট লাইভ হওয়ার পর এর নিচে করা একটি কমেন্ট, সর্বোচ্চ ৮,০০০ অক্ষর। ভিডিও ও Reels-এর ক্ষেত্রে Facebook প্রসেসিং শেষ না করা পর্যন্ত এটি অপেক্ষা করে।

Facebook মিডিয়া সীমা

Social media studio পাবলিশ করার আগে প্রতিটি ফাইল এই সীমাগুলোর সাথে মিলিয়ে দেখে। এগুলো আমাদের কনফিগার করা সীমা, Facebook-এর কোনো প্রতিশ্রুতি নয়: GET /v1/media/rules লাইভ টেবিলটি ফেরত দেয়, আর POST /v1/media/validate পোস্ট না করেই একটি ফাইল যাচাই করে।

পোস্টের ধরন TEXT

শুধু টেক্সট, মিডিয়া নেই

পোস্টের ধরন IMAGE

ফরম্যাট
JPEG, PNG, GIF, WebP
সর্বোচ্চ ফাইল সাইজ
10 MB
প্রতি পোস্টে ফাইল
1
ডাইমেনশন
≥ 200 × 200 px

পোস্টের ধরন MULTIPLE_IMAGES

ফরম্যাট
JPEG, PNG, GIF, WebP
সর্বোচ্চ ফাইল সাইজ
প্রতিটি 10 MB
প্রতি পোস্টে ফাইল
2–10
ডাইমেনশন
≥ 200 × 200 px

পোস্টের ধরন VIDEO

ফরম্যাট
MP4, MOV, AVI
সর্বোচ্চ ফাইল সাইজ
350 MB
প্রতি পোস্টে ফাইল
1
সর্বোচ্চ সময়কাল
4 ঘণ্টা
ডাইমেনশন
120–4096 px
ভিডিও কোডেক
H.264, H.265
ফ্রেম রেট
≤ 60 fps

পোস্টের ধরন REEL

ফরম্যাট
MP4, MOV
সর্বোচ্চ ফাইল সাইজ
350 MB
প্রতি পোস্টে ফাইল
1
সর্বোচ্চ সময়কাল
90 সেকেন্ড
ডাইমেনশন
≥ 540 × 960 px
অ্যাসপেক্ট রেশিও
9:16
ভিডিও কোডেক
H.264, H.265
ফ্রেম রেট
≤ 60 fps

পোস্টের ধরন STORY

ফরম্যাট
JPEG, PNG, GIF, WebP, MP4, MOV
সর্বোচ্চ ফাইল সাইজ
350 MB
প্রতি পোস্টে ফাইল
1
সর্বোচ্চ সময়কাল
60 সেকেন্ড
ডাইমেনশন
≥ 540 × 960 px
অ্যাসপেক্ট রেশিও
9:16

কখন লাইভ হলো তা জানুন

পাবলিশিং অ্যাসিনক্রোনাস। post.published ও post.failed-এ সাবস্ক্রাইব করুন, অথবা postStatus POSTED বা FAILED না হওয়া পর্যন্ত GET /v1/posts/:id পোল করুন।

একবার সাবস্ক্রাইব করুন
curl -X POST https://api.so-me.studio/v1/webhooks/subscriptions \
  -H "X-API-Key: $SOME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/hooks/social",
    "categories": ["post"],
    "events": ["post.published", "post.failed"]
  }'

# The response includes the secret that signs every delivery.
প্রতিটি ডেলিভারি দেখতে যেমন
POST /hooks/social
X-Webhook-Event: post.published
X-Webhook-Signature: <hex HMAC-SHA256 of the raw body>

{
  "event": "post.published",
  "category": "post",
  "timestamp": "2026-11-03T15:00:07.412Z",
  "data": { "postId": "…", "platform": "FACEBOOK" }
}

প্রতিটি ডেলিভারি X-Webhook-Signature-এ HMAC-SHA256 দিয়ে সাইন করা থাকে। post.failed শেষ রিট্রাইয়ের পরে ট্রিগার হয়; কারণটি ঠিক করে POST /v1/posts/:id/retry কল করুন। প্রথম কমেন্টের ফলাফল আলাদাভাবে post.first_comment_posted বা post.first_comment_failed দিয়ে জানানো হয়।

AI এজেন্ট বানাচ্ছেন?

একই API কী ২০০+ টুলসহ একটি MCP সার্ভার এবং একটি CLI চালায়, তাই একটি এজেন্ট হাতে লেখা HTTP কল ছাড়াই Facebook-এ পোস্ট করতে পারে।

MCP সার্ভার

আপনার API কী দিয়ে সার্ভারটি Claude, Cursor বা যেকোনো MCP ক্লায়েন্টে যোগ করুন। OAuth-ও কাজ করে। Facebook-এর জন্য এজেন্ট REST রিকোয়েস্টের একই ফিল্ড দিয়ে এই টুলগুলো কল করে:

  • presign_media_upload
  • validate_post_media
  • create_post
mcp.json
{
  "mcpServers": {
    "so-me-studio": {
      "url": "https://api.so-me.studio/mcp",
      "headers": { "X-API-Key": "sk_live_…" }
    }
  }
}

CLI

npm i -g @social-media-scheduler/cli দিয়ে ইনস্টল করুন। এটি আপনার হয়ে লোকাল ফাইল আপলোড করে এবং JSON প্রিন্ট করে, তাই একটি স্ক্রিপ্ট বা CI জব একটি কমান্ডেই Facebook পোস্ট শিডিউল করতে পারে।

so-me
so-me posts:create --platform FACEBOOK --post-type REEL \
  -m ./store-tour.mp4 \
  -c "আমাদের নতুন দোকান শনিবার খুলছে। ভেতরের প্রথম ঝলক।" \
  -s 2026-11-07T10:00:00Z

API, CLI ও MCP অ্যাক্সেস প্রতিটি পেইড প্ল্যানে অন্তর্ভুক্ত: Lite, Creator, Standard, Advanced ও Lifetime। প্ল্যান ও সীমা দেখুন

আরও পড়ুন

অন্যান্য প্ল্যাটফর্মের গাইড

না। Facebook API ব্যক্তিগত প্রোফাইলে নয়, Page-এ পাবলিশ করে, তাই Social media studio আপনার ম্যানেজ করা Page-এ পোস্ট করে।

কমপক্ষে ৫৪০ × ৯৬০ px আকারের এবং সর্বোচ্চ ৯০ সেকেন্ডের একটি ভার্টিকাল ৯:১৬ ভিডিও আপলোড করুন, তারপর সেটির fileId ও একটি scheduledAt সময়সহ postType REEL পাঠান।

না। আপনি Social media studio ড্যাশবোর্ডে Facebook-এ সাইন ইনের মাধ্যমে একবারই Facebook অ্যাকাউন্ট যুক্ত করেন। এর টোকেন এনক্রিপ্ট করে সংরক্ষণ করা হয় এবং আমাদের দিকে রিফ্রেশ করা হয়, আর আপনার কোড কেবল X-API-Key হেডারে আপনার Social media studio API কী পাঠায়।

না। পোস্ট কিউতে ঢোকামাত্রই এটি ফেরত আসে। পাবলিশিং এমন একটি ওয়ার্কারে চলে যা ব্যর্থ হলে আবার চেষ্টা করে, তাই post.published ও post.failed শুনুন, অথবা GET /v1/posts/:id পোল করুন।

REST API, CLI ও MCP সার্ভার প্রতিটি পেইড প্ল্যানে অন্তর্ভুক্ত: Lite, Creator, Standard, Advanced ও Lifetime। Lite, Creator, Standard ও Advanced ৭ দিনের ট্রায়াল দিয়ে শুরু হয় (কার্ড প্রয়োজন), আর Lifetime একবারের পেমেন্ট।

একবার শিডিউল করুন।
সবখানে পোস্ট করুন।

ট্যাব নিয়ে টানাহেঁচড়া বন্ধ করুন, একটিমাত্র ক্যালেন্ডার থেকেই ২০টি প্ল্যাটফর্মের জন্য লিখুন, সাজান ও প্রকাশ করুন।

Facebook পোস্টিং API: Page পোস্ট ও Reels শিডিউল