Annual Ads платформ дээр шууд бүтээх — зар сурталчилгаачдыг үүсгэх, зар сурталчилгааг нийтлэх, төлбөрүүдийг идэвхжүүлэх, зэрэглэлээ хянах бүхнийг API-ээр бүрэн гүйцэтгэх.
Бүтэн үнийн хүснэгтийг үзэхТа 70%-ийг хадгална Connect-режимийн зар сурталчилгаачид зар сурталчилгаандаа төлдөг мөнгөний хэмжээ — автоматаар таны түрийвчинд шилждэг. Доор хэрхэн ажилладагийг үзнэ үү.
Бүх хүсэлтийг Authorization толгой дээрх нууц түлхүүрээр Bearer схемийг ашиглан баталгаажуулдаг.
POST https://api.adhub365.com/v1/partner/ads
Authorization: Bearer sk_sandbox_...
Content-Type: application/jsonAPI түлхүүрүүдийг Жил бүрийн зар сурталчилгааны баг зөвшөөрөгдсөн түншийн дансуудад олгодог.
Түншийн данс үүсгэх| POST | /v1/partner/advertisersХэрэглэгчдийнхээ нэгийн өмнөөс зар сурталчилгаачны данс үүсгэх (Connect горим). | advertisers:write |
| GET | /v1/partner/advertisers/{id}Энэхүү түншээр үүсгэгдсэн зар сурталчилгаачийн дансыг хайж үзнэ үү. | advertisers:read |
| POST | /v1/partner/adsЗар сурталчилгаа үүсгэнэ. Энэ нь эхлээд төсөл (draft) статустай байдаг. Заавал бус advertiser_type, promotion_type, link_type болон promoted_brand талбарууд нь түнш (affiliate), лавлагаа (referral), бүтээгч (creator) эсвэл хувь хүн (individual) сурталчилгааг тодорхойлдог — доорх тэмдэглэлийг үзнэ үү. | ads:write |
| GET | /v1/partner/ads/{id}Зар сурталчилгааг хайж үзээрэй. | ads:read |
| PATCH | /v1/partner/ads/{id}Редакцийн агуулгыг шинэчлэх — гарчиг, тайлбар, холбоос, зар сурталчилгаачны төрөл, урамшууллын төрөл, холбоосын төрөл болон сурталчилгаатай брэнд. Ангилал, газарзүйн мэдээлэл болон зэрэглэл тогтоох системд уншигддаг бусад ямар ч зүйл энд хэзээ ч өөрчлөгдөхгүй. | ads:write |
| POST | /v1/partner/ads/{id}/imageЗарны зургийг шууд байршуулна (JPEG/PNG/WebP, хамгийн ихдээ 5 МБ). Эхний төлбөрөөс өмнө шаардлагатай — доорх төлбөрүүдийн хэсгийг үзнэ үү. | ads:write |
| POST | /v1/partner/ads/{id}/image-urlЗургийг файлаар байршуулахын оронд URL-аас зар сурталчилгааны зураг тохируул — сервер үүнийг өөрөө татаж аваад дахин хостлодог. Шаардлага адилхан: анхны төлбөрөөс өмнө шаардлагатай. | ads:write |
| GET | /v1/partner/ads/{id}/rankЗар сурталчилгааны одоогийн зэрэглэл, ангилал болон газарзүйн хүрээ. | ads:read |
| GET | /v1/partner/ads/{id}/statsЗар сурталчилгааны нийт үзэлт ба товшилтын тоо, өнгөрсөн/үлдсэн хоногийн тоо нь GET /{id} дээрх activated_at ба expires_at талбаруудаас авдаг, харин зэрэглэл нь GET /{id}/rank-аас авдаг. | ads:read |
| POST | /v1/partner/paymentsЭхний худалдан авалт эсвэл данс нөхөх зориулалттай крипто төлбөр эхлүүлнэ. 422 алдаанаас болж эхний төлбөр бүтэлгүйтнэ, хэрвээ зар сурталчилгаанд аль хэдийн зураг байхгүй бол — дээрх uploadAdImage/setAdImageUrl-ийг үзнэ үү. | payments:write |
| GET | /v1/partner/payments/{id}Төлбөрийн төлөв байдлыг шалгах | payments:read |
| POST | /v1/partner/referralsТанилцуулгын холбоос үүсгэх | referrals:write |
| GET | /v1/partner/referrals/{code}/earningsСтатусаар ангилсан нийт лавлагааны орлого | referrals:read |
| GET | /v1/partner/ad-revenue/earningsТаны Connect горимд үүсгэсэн зар сурталчилгаанууд зар сурталчилгаандаа төлсөн төлбөрийн 70%-ийн хуваарийг статусаар ангилан харуулсан. | ad-revenue:read |
| GET | /v1/partner/access-logЭнэхүү түлхүүр функцийн бүх дуудлагын түүх — арга, зам, IP хаяг, цагийн тамга. | Тэнд |
| GET | /v1/rankings?category={id}&geo={scope}Ангилал болон газарзүйн хүрээнд зөвхөн унших боломжтой зэрэглэл. | Нээлттэй |
| GET | /v1/tiersТохируулсан 7 үнийн түвшин (хязгаар, нээгдсэн давуу талууд) | Нээлттэй |
| GET | /v1/referral-programОдоогоор реферал каскад болон Лидерүүдийн сангийн хувьд хүчин төгөлдөр байгаа комиссын хувь хэмжээ. | Нээлттэй |
| GET | /v1/partner-programОдоогийн зар сурталчилгааны орлогын хуваарилалт (Connect горим) таны болон Annual Ads хооронд. | Нээлттэй |
| GET | /v1/search?q={query}Байгалийн хэлний хайлт — "Кенид тавилга зарлагчид" гэх мэт асуултыг тохирох ангилал болон газарзүйн хүрээнд чиглүүлж, дараа нь тэр зэрэглэлтийг яг бодит эрэмбээр нь буцаана. | Нээлттэй |
Хамтрагч болон лавлагааны сурталчилгаа
advertiser_type, promotion_type, link_type болон promoted_brand нь POST болон PATCH /v1/partner/ads-д сонголттой талбарууд бөгөөд Annual Ads нь зөвхөн өөрсдийгөө сурталчилдаг бизнесүүдэд хязгаарлагддаггүй. link_type нь affiliate_link эсвэл referral_invitation_link байх үед, эсвэл promotion_type нь affiliate_offer эсвэл referral_opportunity байх үед affiliate_terms_accepted нь true байх ёстой, эс тэгвээс хүсэлт 422 кодоор няцаагдана. title нь 35 тэмдэгт, description нь 80 тэмдэгтээр хязгаарлагддаг — эдгээр хязгаарлалтыг зөвхөн хяналтын самбарын интерфэйс дээр бус, серверийн талд мөрддөг.
Зар сурталчилгаачны бүх дансанд суурилуулсан хиймэл оюун ухааны хэрэгслүүдийн багц олгогддог: зар сурталчилгааны агуулга, дүрслэлийг үүсгэгч, ярианы туслах, төсвийн зөвлөх, гадаад SEO аудитор. Эдгээрийг жилийн тогтмол үнийн дээр хиймэл оюун ухааны кредитээр төлдөг.
| POST | /v1/advertisers/{id}/ai/assistantAsk Annual Ads — хөвөгч чат бот туслах, зөвхөн мэдээлэл өгөх зориулалттай, дансны мэдээлэл дээр зөвхөн унших боломжтой. | Нээлттэй |
| POST | /v1/advertisers/{id}/ai/creative-studioБогино бизнесийн тайлбараас зар сурталчилгааны гарчиг, тайлбар болон түлхүүр үгс үүсгэх. | 2 кредит(үүд) |
| POST | /v1/advertisers/{id}/ai/creative-studio/imageНэг ижил бизнесийн тайлбараас зар сурталчилгаанд хавсаргахад бэлэн, жагсаалтын дүрслэл (PNG) үүсгэнэ. | 8 кредит(үүд) |
| POST | /v1/advertisers/{id}/ai/budget-advisorЖинхэнэ статистик төсөөлөл — ердөө л ерөнхий таамаглал биш — тодорхой зэрэглэлийг 30, 90, 365 хоногийн дараа хадгалах магадлал. | 1 кредит(үүд) |
| POST | /v1/advertisers/{id}/ai/seo-auditЗар сурталчилгаачны гадаад вэбсайтыг шинжилж, тодорхой SEO сайжруулалтуудыг санал болго. | 2 кредит(үүд) |
Дараах зураг үүсгэгчийг мөн дээрх ангилал болон бизнесийн тайлбар тэжээдэг.
POST https://api.adhub365.com/v1/advertisers/{advertiser_id}/ai/creative-studio
Authorization: Bearer <session access token>
Content-Type: application/json
{
"category_name": "Furniture",
"business_description": "We sell handmade oak dining tables"
}{
"title": "Handmade Oak Dining Tables — Built to Last",
"description": "Solid oak dining tables crafted by hand, built to last a lifetime.",
"keywords": ["oak furniture", "dining table", "handmade"],
"credits_remaining": 8
}Тухайн зар сурталчилгаанд таарах визуал үүсгэх:
POST https://api.adhub365.com/v1/advertisers/{advertiser_id}/ai/creative-studio/image
Authorization: Bearer <session access token>
Content-Type: application/json
{
"category_name": "Furniture",
"business_description": "We sell handmade oak dining tables"
}{
"visual_url": "https://cdn.uploadscenter.com/file_01m1...",
"credits_remaining": 4
}Бэлэн болсон зар нэгжийг өөрийн сайт дээрээ шууд байршуул — ямар ч угсралтын алхам, iframe шаардагдахгүй. Скрипт тусгаарлагдсан Shadow DOM-д шууд хуудас дээр харуулдаг тул түүний хэв маяг таны сайт руу нэвтрэхгүй, таны сайтын хэв маяг ч түүнд нэвтрэхгүй.
<div
class="annualads-widget"
data-category="YOUR_CATEGORY_ID"
data-geo="global"
data-count="4"
data-columns="2"
></div>
<script async src="https://adhub365.com/widget.js"></script>Анхдагчаар энэ нь ангиллын бүх нийтийн зэрэглэл (бүх платформ дахь зар сурталчилгаачид, зөвхөн та авчирсан зар сурталчилгаачид биш) харуулдаг. Connect горим ашиглан үүсгэсэн (таны хувь хэмжээг бүрдүүлж буй) зар сурталчилгаачдын зар сурталчилгааг л харуулахын тулд data-partner талбарт өөрийн түншийн ID-ээ (өөрөөний дашбордын Хөгжүүлэгчдийн хуудаснаас олж болно) нэмж оруулна:
<div
class="annualads-widget"
data-category="YOUR_CATEGORY_ID"
data-geo="global"
data-partner="YOUR_PARTNER_ID"
></div>
<script async src="https://adhub365.com/widget.js"></script>Хэрвээ таны зар сурталчилгаачид хэд хэдэн ангилалд хамаарах бол data-category-г бүрэн хас. Зөвхөн data-partner-ийг ашигласнаар виджет нь бүх ангилалд хамаарах таны бүх зар сурталчилгааг нэг сүлжээнд харуулна, ангилал бүрт нэг виджет блок шаардах шаардлагагүй:
<div
class="annualads-widget"
data-geo="global"
data-partner="YOUR_PARTNER_ID"
></div>
<script async src="https://adhub365.com/widget.js"></script>Контентын доторх нэгжтэйгээ зэрэгцэн, өөр өөр зар сурталчилгаа харуулдаг footer хэв маягийн нэгж нэмэхийг хүсч байна уу? Хоёр дахь виджет блок нэмээд data-layout="compact" (нэг зар, жижиг "pill" хэлбэрт хураагдах) болон data-offset-ийг эхний виджет дээр аль хэдийн хэдэн зар гарч байгааг зааж тохируулна:
<!-- in your content -->
<div
class="annualads-widget"
data-category="YOUR_CATEGORY_ID"
data-geo="global"
data-count="4"
data-columns="2"
></div>
<!-- in your footer, showing different ads via data-offset -->
<div
class="annualads-widget"
data-category="YOUR_CATEGORY_ID"
data-geo="global"
data-layout="compact"
data-offset="4"
></div>
<script async src="https://adhub365.com/widget.js"></script>data-category | Харуулах ангиллын ID. Шаардлагатай — data-partner тохируулагдсан тохиолдолд үүнийг орхигдуулснаар түншийн зар бүх ангилалд гарна. |
data-geo | Гео хүрээ: орон нутгийн, бүс нутгийн эсвэл дэлхийн. Анхдагчаар дэлхийн. |
data-count | Харуулах зар сурталчилгааны тоо. Анхдагчаар 4 байна. |
data-columns | Торонгийн баганын тоо. Анхдагчаар 2. |
data-layout | grid, list эсвэл compact. Анхдагчаар grid. compact нь ганц зар (data-count-ийг үл тоомсорлоно) харуулж, түүнийг жижиг бөмбөлөг болгон нуух, буцаах товчтой — хөлний хэсгийн маягийн нэгж бөгөөд скриптээр тогтмол байрлуулдаггүй, та контейнер div-ийг өөрийн хуудас дээр хүссэнээрээ байрлуулж, хэв маягийг нь тохируулж болно. |
data-offset | Дээд зэрэглэлийн зар сурталчилгааг алгасгах тоо. Анхдагчаар 0. Энэ нь нэгэн хуудас дээрх хоёр дахь виджетэд (жишээ нь хөл хэсэгт байрлах жижигхэн виджет болон хуудасны дээд хэсэгт байрлах торон виджет) ижил зар сурталчилгааг давтан харуулахын оронд өөр зар сурталчилгааг харуулах боломжийг олгодог — үүний тулд тухайн виджет аль хэдийн харуулж буй зар сурталчилгааны тоог дамжуулна. |
data-partner | Таны түншийн ID (үүнийг танай дашбоардны Developers хуудаснаас олж болно). Сонголттой — үүнгүйгээр виджет тухайн ангиллын бүх нийтийн зэрэглэл, платформ дахь бүх зар сурталчилгаачийг харуулна. Харин үүнийг ашигласнаар зөвхөн Connect горим ашиглан оруулсан, үнэхээр таны хувийг бий болгодог зар сурталчилгаачдын зар л харуулагдана. |
Хүсэлтүүд нь түлхүүр бүрт минутанд хязгаарлагддаг. Бүх баталгаажсан хариултууд X-RateLimit-Limit, X-RateLimit-Remaining болон X-RateLimit-Reset толгой мэдээллийг агуулдаг; хязгаарыг давсан тохиолдолд Retry-After толгойтой 429 Too Many Requests алдаа буцаана.
Сонголттой, хамтрагч бүрийн хувьд. Та бичлэг нэмэх хүртэл таны түлхүүрүүд ямар ч IP хаягаас ирж буй хүсэлтийг хүлээн авна — эхний бичлэг тухайн хамтрагчийн бүх түлхүүрүүдийг зөвшөөрөгдсөн жагсаалтын горимд шилжүүлнэ.
Бүх вэбхук үүсэх үед нэг удаа олгогдсон нууцаар HMAC-SHA256-аар гарын үсэг зурдаг — ачааг итгэхээсээ өмнө гарын үсгийг шалгаарай. Үйл явдлууд зөвхөн холбогдох зар сурталчилгаачийн эзэмшдэг түншид хүргэгддэг.
payment.succeeded | Төлбөр баталгаажлаа. |
payment.refunded | Буцаан олголтыг гүйцэтгэнэ. |
ad.activated | Зар автоматаар эсвэл админы хяналтаас хойш идэвхжинэ. |
invoice.issued | Нэг нэхэмжлэх гаргагдсан. |
referral.payout.completed | Таны лавлагаагаар үүссэн комисс төлбөртэй болдог. |
referral.payout.failed | Төлбөрийн багц үйлчилгээ үзүүлэгчийн зүгээс амжилтгүй болсон тохиолдолд орлого дахин төлбөрт шилжиж, дахин оролдлого хийгдэнэ. |
rank.changed | Зар сурталчилгааны зэрэглэл өөрчлөгдөнө — үүнд өөр зар сурталчилгаачны төлбөр нөлөөлсөн тохиолдол ч багтана. |
ad.expiring_soon | Зар дуусахаас 30, 7 эсвэл 1 хоногийн өмнө. |
partner_ad_revenue.payout.completed | Зар сурталчилгааны орлогын хуваарилалтын төлбөр төлбөртэй статустай боллоо. |
partner_ad_revenue.payout.failed | Провайдер дээр зар сурталчилгааны орлогын хуваарилалтын төлбөрийн багц бүтэлгүйтсэн — хувьцаанууд дахин төлбөрт шилжиж, дахин оролдлого хийгдэнэ. |
Энэхүү ижил API тодорхойлолтоос үүсгэсэн албан ёсны JavaScript/TypeScript болон Python SDK-үүд төлөвлөгдсөн боловч одоогоор нийтлэгдээгүй байна — тэр болтол HTTP API-г шууд дууддаг бай.
Одоогоор SDK байхгүй — эдгээр нь HTTP API-г шууд дуудаж, өнөөдөр ямар ч програмчлалын хэл дээр ажиллана.
cURL
curl -X POST https://api.adhub365.com/v1/partner/ads \
-H "Authorization: Bearer sk_sandbox_..." \
-H "Content-Type: application/json" \
-d '{"advertiser_id":"adv_9f2a...","category_id":"cat_furniture","geo_scope":"local","title":"..."}'JavaScript
await fetch("https://api.adhub365.com/v1/partner/ads", {
method: "POST",
headers: {
Authorization: "Bearer sk_sandbox_...",
"Content-Type": "application/json",
},
body: JSON.stringify({
advertiser_id: "adv_9f2a...",
category_id: "cat_furniture",
geo_scope: "local",
title: "...",
}),
});Python
import requests
requests.post(
"https://api.adhub365.com/v1/partner/ads",
headers={"Authorization": "Bearer sk_sandbox_..."},
json={
"advertiser_id": "adv_9f2a...",
"category_id": "cat_furniture",
"geo_scope": "local",
"title": "...",
},
)