Skip to content
ডেভেলপারদের জন্য · লঞ্চারে মডপ্যাক

ক্যাটালগ অথর API

আপনার মড, মডপ্যাক, ম্যাপ ও প্যাকের জন্য mca_live_ অথর কী: ড্রাফট, ভার্সন আপলোড, পেজ, দাম ও বিক্রয় পরিসংখ্যান। API এন্ডপয়েন্ট, কী পারমিশন, রিকোয়েস্ট উদাহরণ, এরর ও লিমিট।

আপডেট: ১৩ অক্টোবর, ২০২৬

সাইটে লেখক হিসেবে আপনার মেটেরিয়াল নিয়ে যা যা করা যায়, সবই আপনার নিজের স্ক্রিপ্ট বা বিল্ড পাইপলাইন থেকে করা যায়: ড্রাফট তৈরি করা, নতুন ভার্সন আপলোড করা, পেজ এডিট করা, দাম বদলানো এবং বিক্রি দেখা। এর জন্য দরকার একটি লেখক কী — mca_live_…-এর মতো একটি স্ট্রিং।

কীটি শুধু আপনার মেটেরিয়াল নিয়েই কাজ করে: যেগুলোর লেখক আপনি। অন্যের কাজের ঠিকানা জানা থাকলেও সেই কী দিয়ে তা ছোঁয়া যাবে না।

কী

কীটি ইস্যু হয় আপনার প্রোফাইলে, লেখক সেকশনে। কীটির নাম দিন এবং স্কোপ বেছে নিন; কীটি দেখানো হয় একবারই — আপনার পাইপলাইনের সিক্রেটে সেভ করে রাখুন। হারিয়ে গেলে রিভোক করে নতুন একটি ইস্যু করুন। একসাথে সর্বোচ্চ দশটি অ্যাক্টিভ কী রাখা যায়। পাসওয়ার্ড বা ইমেইল বদলালে অ্যাকাউন্টের সব কী রিভোক হয়ে যায় — এরপর নতুন কী ইস্যু করুন।

স্কোপকী দেয়
items:writeড্রাফট তৈরি, লেখকত্ব নিশ্চিত করা, মেটেরিয়াল রিভিউতে জমা দেওয়া
versions:writeআপলোড URL নেওয়া এবং ভার্সন রেজিস্টার করা
page:writeছবি, পেজ ড্রাফট এবং তা রিভিউতে জমা দেওয়া
pricing:writeমেটেরিয়ালের দাম
stats:readডাউনলোড, প্লেয়ার এবং বিক্রি

পাইপলাইনকে শুধু যা দরকার তাই দিন: একটি বিল্ড কী সাধারণত versions:write ও stats:read নিয়ে থাকে।

সব এন্ডপয়েন্ট https://api.millida.net/v2-এর অধীনে; কীটি যায় হেডারে:

Authorization: Bearer mca_live_…

আমার মেটেরিয়াল

GET /catalog/author-api/items
[
  {
    "slug": "my-pack",
    "type": "MODPACK",
    "title": "My modpack",
    "status": "PUBLISHED",
    "moderationStatus": "PUBLISHED",
    "pricing": "ONE_TIME",
    "priceKopecks": 49900,
    "versionsCount": 12,
    "downloads": 5310,
    "publicUrl": "/modpacks/my-pack"
  }
]

নতুন মেটেরিয়াল

POST /catalog/author-api/items
{ "type": "MOD", "title": "My mod", "summary": "Briefly about the mod" }

মেটেরিয়ালটি ড্রাফট হিসেবে দেখা যায়। ঠিকানা (slug) নাম থেকে নেওয়া হয়; ঠিকানাটি আগে থেকে নেওয়া থাকলে 409 আসে সাথে একটি ফ্রি ঠিকানার সাজেশন। তৈরির সময়ের দাম (pricing, priceKopecks) শুধু pricing:write স্কোপ থাকা কী দিয়েই পাঠানো যায়; নাহলে রেসপন্স আসে 403 MISSING_SCOPE।

নতুন ভার্সন

1. আপলোড URL:

POST /catalog/author-api/items/my-pack/upload-url
{ "version": "1.4.0", "fileName": "my-pack-1.4.0.zip", "size": 734003200 }
{ "uploadUrl": "https://…", "storageKey": "catalog/packs/my-pack/…", "expiresIn": 3600 }

2. ফাইল আপলোড করুন uploadUrl-এ একটি PUT রিকোয়েস্ট দিয়ে — সরাসরি স্টোরেজে, মাঝখানে আমরা নেই:

curl -X PUT --upload-file my-pack-1.4.0.zip "$UPLOAD_URL"

3. ভার্সন রেজিস্টার করুন:

POST /catalog/author-api/items/my-pack/versions
{
  "version": "1.4.0",
  "storageKey": "catalog/packs/my-pack/…",
  "gameVersions": ["1.20.1"],
  "loaders": ["fabric"],
  "loaderVersion": "0.16.0",
  "changelog": "New quests"
}

ভার্সনটি অটোমেটিক রিভিউতে যায় এবং তারপর প্লেয়ারদের কাছে দেখা যায়। প্রতিটি আপলোড নতুন ফাইল: আগেই পাবলিশ করা ভার্সন ওভাররাইট করা যায় না।

রিভিউতে জমা দেওয়া

নতুন মেটেরিয়াল মডারেটরের পরেই ক্যাটালগে ঢোকে। এতে অন্তত একটি ভার্সন থাকলে নিশ্চিত করুন যে কাজটি আপনার এবং লাইসেন্সটি আপনি বেছেছেন। এটি আলাদা রিকোয়েস্ট: রিভিউতে জমা দিলে এটি নিজে থেকে হয়ে যায় না।

POST /catalog/author-api/items/my-pack/authorship
{ "ok": true }

তারপর মেটেরিয়াল জমা দিন:

POST /catalog/author-api/items/my-pack/submit
{ "ok": true, "status": "PENDING" }

নিশ্চিতকরণ ছাড়া রেসপন্স আসে 400 “Confirm that the modpack is yours and the license was chosen by you”; ভার্সন ছাড়া 400 “Upload the modpack file first”।

পেজ

PUT /catalog/author-api/items/my-pack/page
{ "title": "My modpack", "summary": "…", "descriptionMd": "## What's inside\n…" }

এটি একটি ড্রাফট: নতুনটি রিভিউ পাস না করা পর্যন্ত প্লেয়াররা আগের পেজটিই দেখে। বর্ণনার ছবিগুলো শুধু আমাদের কাছেই আপলোড করতে হবে; লিংক শুধু Millida পেজে পয়েন্ট করতে হবে। আইকন (iconUrl), স্ক্রিনশট (gallery) এবং বর্ণনার ছবিগুলো আগে আপলোড করুন:

curl -H "Authorization: Bearer $MCA_KEY" -F "file=@icon.png" https://api.millida.net/v2/catalog/author-api/images
{ "url": "https://…/uploads/…/icon.png" }

PNG, JPG, WebP এবং AVIF 15 MB পর্যন্ত সাপোর্টেড; GIF নয়। আপলোডের জন্য page:write স্কোপ দরকার; রেসপন্সে একটি ঠিকানা থাকে যা আপনি পেজে বসাতে পারেন। রিভিউতে জমা দিন:

POST /catalog/author-api/items/my-pack/page/submit

দাম

PUT /catalog/author-api/items/my-pack/pricing
{ "pricing": "ONE_TIME", "priceKopecks": 49900 }
pricingএর মানে
FREEফ্রি
ONE_TIMEএকবারের কেনা, চিরকালের অ্যাক্সেস
SUBSCRIPTIONসাবস্ক্রিপশন, মাসে একবার চার্জ হয়
  • অ্যামাউন্ট কোপেক-এ। পেইড মেটেরিয়ালের সর্বনিম্ন দাম 300 ₽ (30000), স্কিন ও কেপের জন্য — 50 ₽ (5000); সর্বোচ্চ 100,000 ₽ (10000000)।
  • প্রতিটি বিক্রি থেকে প্ল্যাটফর্ম 30% নেয়; বাকিটা যায় আপনার Millida ওয়ালেটে।
  • বিক্রির টাকা সাথে সাথেই Millida-র ভেতরে খরচ করা যায়, তবে উইথড্র পাওয়া যায় কেনার 7 দিন পর।
  • পেইড মেটেরিয়ালের ফাইল শুধু অ্যাক্সেস থাকা ব্যক্তিরাই ডাউনলোড করতে পারে। লেখক হিসেবে আপনার অ্যাক্সেস সবসময় থাকে।

স্ট্যাটিসটিক্স

GET /catalog/author-api/items/my-pack/stats
{
  "versions": [{ "version": "1.4.0", "downloads": 312, "reviewStatus": "APPROVED" }],
  "players": { "players": 1204, "playersRecent": 380, "days": [{ "day": "2026-09-24", "players": 41 }] },
  "sales": {
    "totalKopecks": 998000,
    "netKopecks": 698600,
    "count": 20,
    "refundedCount": 0,
    "holdDays": 7,
    "last30d": [{ "day": "2026-09-24", "count": 3, "netKopecks": 104790 }]
  }
}

একসাথে সব মেটেরিয়ালের বিক্রি:

GET /catalog/author-api/sales

এরর

এরর রেসপন্সে সবসময় message থাকে — এটি হুবহু একজনকে দেখাতে পারেন — এবং প্রায়ই code থাকে — যা স্ক্রিপ্টে ব্রাঞ্চ করার জন্য সুবিধাজনক।

স্ট্যাটাসcodeকী হয়েছে
401INVALID_KEYকী নেই, ভুল ফরম্যাটে বা পাওয়া যায়নি
401REVOKED, EXPIREDকী রিভোক হয়েছে বা মেয়াদ শেষ
401OWNER_UNAVAILABLEকী-মালিকের অ্যাকাউন্ট ব্লক করা
403MISSING_SCOPEকী-তে দরকারি স্কোপ নেই; তালিকা আছে scopes-এ
404—মেটেরিয়াল নেই বা আপনার নয়
400PRICE_TOO_LOW, PRICE_TOO_HIGH, INVALID_PRICINGদাম নিয়মের বাইরে; সীমা আছে minKopecks ও maxKopecks-এ
409UNDER_REVIEWমেটেরিয়াল মডারেটর রিভিউতে — নতুন ফাইল তাদের রেসপন্সের পরে
429—অনেক বেশি রিকোয়েস্ট, পরে আবার চেষ্টা করুন

লিমিট

  • প্রতি কী-তে মিনিটে 120 রিকোয়েস্ট।
  • নতুন মেটেরিয়াল — ঘণ্টায় 10, আপলোড URL ও ভার্সন — প্রতিটি ঘণ্টায় 30, পেজ এডিট — ঘণ্টায় 120, ছবি — ঘণ্টায় 60, দাম পরিবর্তন — ঘণ্টায় 60।