← Назад кон таблата

API за организатори.

Последна промена: 14 август 2026

Организираш настани редовно? Поврзи ја твојата апликација или сајт директно со таблата: ти доделуваме личен токен, а сè што ќе објавиш со него носи значка со твоето име.

Како да добиеш токен

Пиши ни директно на Инстаграм @happensmk — ти враќаме личен токен и го договараме името на значката.

Токенот е личен — не го објавувај во јавен код и не го споделувај. Ако протече, пиши ни и веднаш издаваме нов.

Значка на креаторот

Секој настан објавен со твојот токен носи значка со твоето име на таблата — како значката „Instagram“ кај собраните објави, само твоја. Посетителите гледаат дека настанот доаѓа директно од организаторот.

Објава веднаш

Настанот излегува на таблата штом ќе го испратиш — токенот е довербата, не чекаш одобрување. Измените одат исто така директно: час, цена и состав се менуваат во истиот момент.

GET на ендпоинтот го враќа статусот на секој твој настан (published, а pending и rejected ако сме ти го вклучиле прегледот). Ако нешто не е во ред со објава, можеме да ја тргнеме од таблата или да ти го вклучиме прегледот — тогаш новите настани чекаат одобрување, а одговорот кажува колку (pendingReview).

Ендпоинт

Еден POST со JSON — токенот оди во Authorization заглавието:

curl -X POST https://happens.mk/api/skopje/ingest \ -H "Authorization: Bearer ТВОЈ_ТОКЕН" \ -H "Content-Type: application/json" \ -d @nastan.json

Пејлоуд

Три полиња се задолжителни, сè друго е опционално:

{ "events": [{ "venue": "МКЦ", "date": "2026-09-05", "title": "Ringtones LIVE", "start_time": "21:00", "category": "muzika", "price_den": 300, "source_url": "https://karti.com.mk/…" }] }

Програмата на вечерта

Фестивалски ден, вечер со неколку изведувачи, распоред на проекции: тоа е еден настан на таблата, а програмата е она во што се отвора неговиот ред. Напиши ја како што е испечатена — една секција за секое нешто што се случува, по ред.

time стои само таму каде што има испечатен час, во 24-часовен формат; сетот по полноќ, што плакатите го пишуваат „24:00“, тука е 00:00. Втората точка од истиот блок нема свој час, па останува без него — подобро отколку да се повтори или измисли. items се помалите редови под секцијата (режисер и година, составот на бендот), а duration е траењето („92'“). label е твојот збор за програмата („Проекции“, „Line-up“); без него пишува „Програма“.

Програмата е она што се случува во еден ден на едно место. Фестивал од четири вечери значи четири настани, секој со својата програма — не една картичка со сè.

Описот тогаш кажува што е вечерта; програмата кажува што свири. Не повторувај ја едната во другата.

{ "events": [{ "venue": "МКЦ", "date": "2026-09-05", "title": "Фестивал на импровизација — прва вечер", "start_time": "20:00", "program": { "label": "Line-up", "sections": [ { "time": "20:00", "title": "Име на бендот (MK)", "items": [{ "title": "гитара, бас и електроника" }] }, { "title": "Втор состав (SI)" }, { "time": "00:00", "title": "Доцен сет — DJ име" } ] } }] }

Измена на настан

PATCH на истиот ендпоинт менува веќе објавен настан. venue и date го посочуваат настанот, а се менува само она што ќе го наведеш — останатото си останува. null брише опционално поле (на пр. цената).

Изменувањето никогаш не троши од дневниот лимит. Ако настанот не постои, одговорот го враќа под missing — не создава нов.

Промена на местото или датумот значи нов настан: избриши го стариот и објави нов (така работи и ♥ бројачот).

curl -X PATCH https://happens.mk/api/skopje/ingest \ -H "Authorization: Bearer ТВОЈ_ТОКЕН" \ -H "Content-Type: application/json" \ -d '{"events": [{"venue": "МКЦ", "date": "2026-09-05", "start_time": "22:00", "price_den": 350}]}'

Правила

Најмногу 30 нови настани дневно, и најмногу 2 твои настани на ист датум — цела сезона одеднаш е во ред, преземање на една вечер не е.

Одговорот на секој POST кажува што е примено, зошто нешто е прескокнато (skipped) и колку нови ти остануваат денес (remainingToday). Двата лимита се креваат поединечно — пиши ни ако ти треба повеќе.

Еден запис по место и датум: повторен POST за истиот слот го заменува претходниот, исто како PATCH, и не троши од лимитот.

Минати настани не се примаат; напред важи до една година. Туѓи записи (на скрејперот или друг организатор) не можеш да ги презапишеш — ако се судрите, пиши ни.

Бришење

DELETE на истиот ендпоинт ги трга твоите записи — по место и датум:

curl -X DELETE https://happens.mk/api/skopje/ingest \ -H "Authorization: Bearer ТВОЈ_ТОКЕН" \ -H "Content-Type: application/json" \ -d '{"slots": [{"venue": "МКЦ", "date": "2026-09-05"}]}'

Еднократен настан?

За еден настан не ти треба API — пополни ја формата и оди на преглед. За сè друго, пиши ни на Инстаграм.