openapi: 3.0.3 info: title: 'Oblakkarte.rs API Documentation' description: '' version: 1.0.0 servers: - url: 'https://tic.rs' tags: - name: Endpoints description: '' - name: 'MediaPartner API' description: "\nEndpoints for media partners.\n\n**Rate limit: 60 requests/minute.**" - name: 'Organizer API' description: "\nEndpoints for organizers.\n\n**Rate limit: 60 requests/minute.**" - name: 'Payment API' description: "\nOrganizer server API for creating and managing orders, viewing transactions, and initiating refund requests.\n\nRate limit: 60 requests/minute." components: securitySchemes: default: type: apiKey name: X-Api-Key in: header description: 'You can retrieve your token by visiting your dashboard and clicking Generate API token.' security: - default: [] paths: /api/organizer/v1/auth/login: post: summary: 'Авторизация организатора через email и password' operationId: EmailPassword description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address.' example: gbailey@example.net nullable: false password: type: string description: 'Must be at least 6 characters.' example: '+-0pBNvYgxwmi/#iw' nullable: false required: - email - password security: [] /api/organizer/v1/auth/me: get: summary: 'Получение информации о текущем пользователе' operationId: '' description: '' parameters: [] responses: 500: description: '' content: text/plain: schema: type: string example: '' tags: - Endpoints security: [] /api/organizer/v1/auth/logout: post: summary: 'Выход из системы (инвалидация токена)' operationId: '' description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/organizer/v1/auth/refresh: post: summary: 'Обновление токена' operationId: '' description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/mediapartner/v1/events: get: summary: Events operationId: events description: 'Returns a paginated list of all published events with ticket sales (booking_type_id = 4). Each event object includes basic information, publication status, city, event type, venue, currency, categories, languages, and statistics (number of dates and bookings).' parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 50.' example: 10 required: false schema: type: integer description: 'Number of results per page. Maximum: 50.' example: 10 nullable: false - in: query name: city_id description: 'Filter events by city ID.' example: 1 required: false schema: type: integer description: 'Filter events by city ID.' example: 1 nullable: false - in: query name: country_code description: 'Filter events by country code (e.g. RS, US, RU).' example: RS required: false schema: type: string description: 'Filter events by country code (e.g. RS, US, RU).' example: RS nullable: false - in: query name: date_from description: 'Filter events by start date (YYYY-MM-DD format). Default: today.' example: '2024-01-01' required: false schema: type: string description: 'Filter events by start date (YYYY-MM-DD format). Default: today.' example: '2024-01-01' nullable: false - in: query name: date_to description: 'Filter events by end date (YYYY-MM-DD format). Default: no limit.' example: '2024-12-31' required: false schema: type: string description: 'Filter events by end date (YYYY-MM-DD format). Default: no limit.' example: '2024-12-31' nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: sr schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - uuid: qJrNencO name: 'Ruslan Muhtarov. Snimanje stand-up koncerta' description: 'Ruslan Muhtarov. Snimanje stand-up koncerta' created_at: '2024-11-08T22:03:37+01:00' updated_at: '2025-05-18T17:47:31+02:00' geo: city: id: 1 name: Beograd country: id: 1 code: rs name: Srbija place: id: 89 name: 'Prostor Miljenko Dereta' address: 'Добрачина 55, Београд 11000, Сербия' city_id: 1 event_type: id: null name: null currency: id: 1 code: RSD is_published: true organizer_publish_status: true has_future_dates: false calendars_count: 2 reservations_count: 52 is_available: true categories: - id: 13 name: Stand-up - id: 18 name: Koncerti - id: 29 name: 'Za odrasle' - id: 33 name: Zabava languages: - id: 1 name: Русский code: ru calendar: - date_start: '2024-12-07T21:00:28+01:00' date_end: '2024-12-07T22:30:49+01:00' is_available: true tickets: - name: ' ' price: 1800 currency_code: RSD is_available: true - date_start: '2024-12-07T18:30:00+01:00' date_end: '2024-12-07T20:00:00+01:00' is_available: false tickets: - name: ' ' price: 1800 currency_code: RSD is_available: false url: lite: 'https://qqxyvuln.tic.rs/sr/qJrNencO?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=subdomain&utm_term=AbXPw3fr' public: 'https://tic.rs/sr/beograd/events/stendap-13/ruslan-mukhtarov-filming-of-a-stand-up-concert-233?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=public&utm_term=AbXPw3fr' links: first: 'https://tic.rs/api/mediapartner/v1/events?page=1' last: 'https://tic.rs/api/mediapartner/v1/events?page=1' prev: null next: null meta: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/mediapartner/v1/events?page=1' label: '1' active: true - url: null label: 'Sledeći »' active: false path: 'https://tic.rs/api/mediapartner/v1/events' per_page: 10 to: 1 total: 1 properties: data: type: array example: - uuid: qJrNencO name: 'Ruslan Muhtarov. Snimanje stand-up koncerta' description: 'Ruslan Muhtarov. Snimanje stand-up koncerta' created_at: '2024-11-08T22:03:37+01:00' updated_at: '2025-05-18T17:47:31+02:00' geo: city: id: 1 name: Beograd country: id: 1 code: rs name: Srbija place: id: 89 name: 'Prostor Miljenko Dereta' address: 'Добрачина 55, Београд 11000, Сербия' city_id: 1 event_type: id: null name: null currency: id: 1 code: RSD is_published: true organizer_publish_status: true has_future_dates: false calendars_count: 2 reservations_count: 52 is_available: true categories: - id: 13 name: Stand-up - id: 18 name: Koncerti - id: 29 name: 'Za odrasle' - id: 33 name: Zabava languages: - id: 1 name: Русский code: ru calendar: - date_start: '2024-12-07T21:00:28+01:00' date_end: '2024-12-07T22:30:49+01:00' is_available: true tickets: - name: ' ' price: 1800 currency_code: RSD is_available: true - date_start: '2024-12-07T18:30:00+01:00' date_end: '2024-12-07T20:00:00+01:00' is_available: false tickets: - name: ' ' price: 1800 currency_code: RSD is_available: false url: lite: 'https://qqxyvuln.tic.rs/sr/qJrNencO?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=subdomain&utm_term=AbXPw3fr' public: 'https://tic.rs/sr/beograd/events/stendap-13/ruslan-mukhtarov-filming-of-a-stand-up-concert-233?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=public&utm_term=AbXPw3fr' items: type: object properties: uuid: type: string example: qJrNencO name: type: string example: 'Ruslan Muhtarov. Snimanje stand-up koncerta' description: type: string example: 'Ruslan Muhtarov. Snimanje stand-up koncerta' created_at: type: string example: '2024-11-08T22:03:37+01:00' updated_at: type: string example: '2025-05-18T17:47:31+02:00' geo: type: object properties: city: type: object properties: id: type: integer example: 1 name: type: string example: Beograd country: type: object properties: id: type: integer example: 1 code: type: string example: rs name: type: string example: Srbija place: type: object properties: id: type: integer example: 89 name: type: string example: 'Prostor Miljenko Dereta' address: type: string example: 'Добрачина 55, Београд 11000, Сербия' city_id: type: integer example: 1 event_type: type: object properties: id: type: string example: null name: type: string example: null currency: type: object properties: id: type: integer example: 1 code: type: string example: RSD is_published: type: boolean example: true organizer_publish_status: type: boolean example: true has_future_dates: type: boolean example: false calendars_count: type: integer example: 2 reservations_count: type: integer example: 52 is_available: type: boolean example: true categories: type: array example: - id: 13 name: Stand-up - id: 18 name: Koncerti - id: 29 name: 'Za odrasle' - id: 33 name: Zabava items: type: object properties: id: type: integer example: 13 name: type: string example: Stand-up languages: type: array example: - id: 1 name: Русский code: ru items: type: object properties: id: type: integer example: 1 name: type: string example: Русский code: type: string example: ru calendar: type: array example: - date_start: '2024-12-07T21:00:28+01:00' date_end: '2024-12-07T22:30:49+01:00' is_available: true tickets: - name: ' ' price: 1800 currency_code: RSD is_available: true - date_start: '2024-12-07T18:30:00+01:00' date_end: '2024-12-07T20:00:00+01:00' is_available: false tickets: - name: ' ' price: 1800 currency_code: RSD is_available: false items: type: object properties: date_start: type: string example: '2024-12-07T21:00:28+01:00' date_end: type: string example: '2024-12-07T22:30:49+01:00' is_available: type: boolean example: true tickets: type: array example: - name: ' ' price: 1800 currency_code: RSD is_available: true items: type: object properties: name: type: string example: ' ' price: type: integer example: 1800 currency_code: type: string example: RSD is_available: type: boolean example: true url: type: object properties: lite: type: string example: 'https://qqxyvuln.tic.rs/sr/qJrNencO?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=subdomain&utm_term=AbXPw3fr' public: type: string example: 'https://tic.rs/sr/beograd/events/stendap-13/ruslan-mukhtarov-filming-of-a-stand-up-concert-233?utm_source=mediapartner&utm_medium=api&utm_campaign=event&utm_content=public&utm_term=AbXPw3fr' links: type: object properties: first: type: string example: 'https://tic.rs/api/mediapartner/v1/events?page=1' last: type: string example: 'https://tic.rs/api/mediapartner/v1/events?page=1' prev: type: string example: null next: type: string example: null meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/mediapartner/v1/events?page=1' label: '1' active: true - url: null label: 'Sledeći »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Prethodni' active: type: boolean example: false path: type: string example: 'https://tic.rs/api/mediapartner/v1/events' per_page: type: integer example: 10 to: type: integer example: 1 total: type: integer example: 1 401: description: 'Authentication failed' content: application/json: schema: type: object example: message: 'Invalid or inactive API key' properties: message: type: string example: 'Invalid or inactive API key' tags: - 'MediaPartner API' /api/mediapartner/v1/statistics: get: summary: Statistics operationId: statistics description: "Returns statistics including unique users, event views, ticket clicks, purchases, and purchase amounts with breakdown by days and events.\n\n**Rate limit: 1 request per minute per organizer.**" parameters: - in: query name: start_date description: 'Start date for statistics (YYYY-MM-DD format).' example: '2024-01-01' required: false schema: type: string description: 'Start date for statistics (YYYY-MM-DD format).' example: '2024-01-01' nullable: false - in: query name: end_date description: 'End date for statistics (YYYY-MM-DD format).' example: '2024-01-31' required: false schema: type: string description: 'End date for statistics (YYYY-MM-DD format).' example: '2024-01-31' nullable: false - in: query name: event_signature description: 'Filter by specific event signature.' example: ABC123 required: false schema: type: string description: 'Filter by specific event signature.' example: ABC123 nullable: false - in: query name: utm_filter description: 'Filter by UTM parameter value.' example: mediapartner required: false schema: type: string description: 'Filter by UTM parameter value.' example: mediapartner nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: sr schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: views: 0 clicks_buy: 0 orders: 0 order_sum: 0 unique_events: 0 daily_breakdown: [] event_breakdown: [] properties: views: type: integer example: 0 clicks_buy: type: integer example: 0 orders: type: integer example: 0 order_sum: type: integer example: 0 unique_events: type: integer example: 0 daily_breakdown: type: array example: [] event_breakdown: type: array example: [] 401: description: 'Authentication failed' content: application/json: schema: type: object example: message: 'Invalid or inactive API key' properties: message: type: string example: 'Invalid or inactive API key' tags: - 'MediaPartner API' /api/organizer/v1/events: get: summary: Events operationId: events description: 'Returns a paginated list of events created by the organizer. Each event object includes basic information, publication status, city, event type, venue, currency, categories, languages, and statistics (number of dates and bookings).' parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 50.' example: 10 required: false schema: type: integer description: 'Number of results per page. Maximum: 50.' example: 10 nullable: false - in: query name: city_id description: 'Filter events by city ID.' example: 1 required: false schema: type: integer description: 'Filter events by city ID.' example: 1 nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: sr schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - uuid: WPWLVQ name: 'Odit et.' created_at: '2025-12-29T12:13:28+01:00' updated_at: '2026-01-29T02:36:55+01:00' city: id: 1 name: Beograd event_type: id: 22 name: Vebinar currency: id: 1 code: RSD place: id: 2 name: 'Ben Akiba' address: 'Браће Крсмановић 6, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: true calendars_count: 9 reservations_count: 1 categories: - id: 35 name: Obrazovanje languages: - id: 3 name: Srpski - uuid: TCPSCQLD name: 'Enim non facere tempora.' created_at: '2025-12-05T11:53:07+01:00' updated_at: '2026-01-29T02:36:50+01:00' city: id: 1 name: Beograd event_type: id: 165 name: Banja currency: id: 1 code: RSD place: id: 2 name: 'Ben Akiba' address: 'Браће Крсмановић 6, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: true calendars_count: 1 reservations_count: 7 categories: - id: 39 name: Sastanci languages: - id: 1 name: Русский - uuid: UJWVLXJ name: 'Distinctio eum doloremque id aut.' created_at: '2025-11-13T23:25:05+01:00' updated_at: '2025-11-13T23:25:17+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: BEWTNNO name: 'Quia officia est.' created_at: '2025-11-13T22:32:19+01:00' updated_at: '2025-11-13T22:32:30+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: NTLTCVIP name: 'Repudiandae laboriosam est.' created_at: '2025-11-13T22:32:00+01:00' updated_at: '2025-11-13T22:32:12+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: SGIOGL name: 'Recusandae modi rerum ex.' created_at: '2025-11-13T22:30:05+01:00' updated_at: '2025-11-13T22:30:26+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: RZYHCT name: 'Deserunt ducimus corrupti et.' created_at: '2025-11-13T22:24:03+01:00' updated_at: '2025-12-16T14:56:09+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: FTMGOS name: 'Corporis nesciunt ut ratione.' created_at: '2025-11-13T22:21:26+01:00' updated_at: '2025-11-13T22:25:05+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: BMZEZC name: 'Aut molestiae sunt.' created_at: '2025-11-13T22:18:26+01:00' updated_at: '2025-11-13T22:25:00+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: EXQZTPPI name: 'Et ipsam dolorem et.' created_at: '2025-11-13T22:17:02+01:00' updated_at: '2025-11-13T22:24:48+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe links: first: 'https://tic.rs/api/organizer/v1/events?page=1' last: 'https://tic.rs/api/organizer/v1/events?page=4' prev: null next: 'https://tic.rs/api/organizer/v1/events?page=2' meta: current_page: 1 from: 1 last_page: 4 links: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=1' label: '1' active: true - url: 'https://tic.rs/api/organizer/v1/events?page=2' label: '2' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=3' label: '3' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=4' label: '4' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=2' label: 'Sledeći »' active: false path: 'https://tic.rs/api/organizer/v1/events' per_page: 10 to: 10 total: 33 properties: data: type: array example: - uuid: WPWLVQ name: 'Odit et.' created_at: '2025-12-29T12:13:28+01:00' updated_at: '2026-01-29T02:36:55+01:00' city: id: 1 name: Beograd event_type: id: 22 name: Vebinar currency: id: 1 code: RSD place: id: 2 name: 'Ben Akiba' address: 'Браће Крсмановић 6, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: true calendars_count: 9 reservations_count: 1 categories: - id: 35 name: Obrazovanje languages: - id: 3 name: Srpski - uuid: TCPSCQLD name: 'Enim non facere tempora.' created_at: '2025-12-05T11:53:07+01:00' updated_at: '2026-01-29T02:36:50+01:00' city: id: 1 name: Beograd event_type: id: 165 name: Banja currency: id: 1 code: RSD place: id: 2 name: 'Ben Akiba' address: 'Браће Крсмановић 6, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: true calendars_count: 1 reservations_count: 7 categories: - id: 39 name: Sastanci languages: - id: 1 name: Русский - uuid: UJWVLXJ name: 'Distinctio eum doloremque id aut.' created_at: '2025-11-13T23:25:05+01:00' updated_at: '2025-11-13T23:25:17+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: BEWTNNO name: 'Quia officia est.' created_at: '2025-11-13T22:32:19+01:00' updated_at: '2025-11-13T22:32:30+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: NTLTCVIP name: 'Repudiandae laboriosam est.' created_at: '2025-11-13T22:32:00+01:00' updated_at: '2025-11-13T22:32:12+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: SGIOGL name: 'Recusandae modi rerum ex.' created_at: '2025-11-13T22:30:05+01:00' updated_at: '2025-11-13T22:30:26+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: RZYHCT name: 'Deserunt ducimus corrupti et.' created_at: '2025-11-13T22:24:03+01:00' updated_at: '2025-12-16T14:56:09+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: FTMGOS name: 'Corporis nesciunt ut ratione.' created_at: '2025-11-13T22:21:26+01:00' updated_at: '2025-11-13T22:25:05+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: BMZEZC name: 'Aut molestiae sunt.' created_at: '2025-11-13T22:18:26+01:00' updated_at: '2025-11-13T22:25:00+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe - uuid: EXQZTPPI name: 'Et ipsam dolorem et.' created_at: '2025-11-13T22:17:02+01:00' updated_at: '2025-11-13T22:24:48+01:00' city: id: 1 name: Beograd event_type: id: 2 name: Koncert currency: id: 1 code: RSD place: id: 58 name: 'Фонтан у гостиницы Москва' address: 'Теразијска чесма, Теразије, Београд 11000, Сербия' is_published: false organizer_publish_status: false has_future_dates: false calendars_count: 0 reservations_count: 0 categories: - id: 18 name: Koncerti languages: - id: 5 name: Türkçe items: type: object properties: uuid: type: string example: WPWLVQ name: type: string example: 'Odit et.' created_at: type: string example: '2025-12-29T12:13:28+01:00' updated_at: type: string example: '2026-01-29T02:36:55+01:00' city: type: object properties: id: type: integer example: 1 name: type: string example: Beograd event_type: type: object properties: id: type: integer example: 22 name: type: string example: Vebinar currency: type: object properties: id: type: integer example: 1 code: type: string example: RSD place: type: object properties: id: type: integer example: 2 name: type: string example: 'Ben Akiba' address: type: string example: 'Браће Крсмановић 6, Београд 11000, Сербия' is_published: type: boolean example: false organizer_publish_status: type: boolean example: false has_future_dates: type: boolean example: true calendars_count: type: integer example: 9 reservations_count: type: integer example: 1 categories: type: array example: - id: 35 name: Obrazovanje items: type: object properties: id: type: integer example: 35 name: type: string example: Obrazovanje languages: type: array example: - id: 3 name: Srpski items: type: object properties: id: type: integer example: 3 name: type: string example: Srpski links: type: object properties: first: type: string example: 'https://tic.rs/api/organizer/v1/events?page=1' last: type: string example: 'https://tic.rs/api/organizer/v1/events?page=4' prev: type: string example: null next: type: string example: 'https://tic.rs/api/organizer/v1/events?page=2' meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 4 links: type: array example: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=1' label: '1' active: true - url: 'https://tic.rs/api/organizer/v1/events?page=2' label: '2' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=3' label: '3' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=4' label: '4' active: false - url: 'https://tic.rs/api/organizer/v1/events?page=2' label: 'Sledeći »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Prethodni' active: type: boolean example: false path: type: string example: 'https://tic.rs/api/organizer/v1/events' per_page: type: integer example: 10 to: type: integer example: 10 total: type: integer example: 33 401: description: 'Authentication failed' content: application/json: schema: type: object example: message: 'Invalid or inactive API key' properties: message: type: string example: 'Invalid or inactive API key' tags: - 'Organizer API' /api/organizer/v1/tickets: get: summary: Tickets operationId: tickets description: "Returns a paginated list of all tickets purchased for the organizer's events. Each ticket includes detailed buyer information (full name, email, phone), ticket type, event name and date, applied promo code, price paid, and currency." parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 50.' example: 10 required: false schema: type: integer description: 'Number of results per page. Maximum: 50.' example: 10 nullable: false - in: query name: event_uuid description: 'The UUID of the event, obtained from the event list response.' example: null required: false schema: type: string description: 'The UUID of the event, obtained from the event list response.' example: null nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: sr schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - purchase_date: '2025-12-29T12:20:33+01:00' event: uuid: WPWLVQ name: 'Quis adipisci molestias fugit.' date: '2026-12-15T00:00:00+01:00' customer: name: 'Alanis McLaughlin' email: bauch.marcelo@example.com phone: '+14303747043' promocode: null price_paid: amount: 867.62 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: DE - purchase_date: '2025-12-24T08:57:37+01:00' event: uuid: LQPPWQBE name: 'Voluptate accusamus ut.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Bridget Schaden' email: colt.balistreri@example.net phone: '+13806988637' promocode: SAUS price_paid: amount: 837.87 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: DE - purchase_date: '2025-12-23T13:05:54+01:00' event: uuid: BCHGSRZ name: 'Ratione iure impedit.' date: '2026-08-30T17:00:00+02:00' customer: name: 'Zachery Fadel' email: wortiz@example.com phone: '+16824842226' promocode: null price_paid: amount: 588.09 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T12:58:53+01:00' event: uuid: ZEZCRCVA name: 'Alias ratione dolores.' date: '2026-08-30T17:00:00+02:00' customer: name: 'Dr. Lucie Bauch' email: rhianna.corwin@example.org phone: '+19407091074' promocode: QZIQ price_paid: amount: 981.34 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T12:53:03+01:00' event: uuid: OLKGSSAA name: 'Ut dolores omnis.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Briana Konopelski' email: daniela80@example.net phone: '+15418676967' promocode: null price_paid: amount: 15.07 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T11:31:49+01:00' event: uuid: NADSMR name: 'Odio dolorum voluptates.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Christian Klocko PhD' email: kenna.ortiz@example.org phone: '+17793152713' promocode: PVFAYB price_paid: amount: 234.46 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-23T11:28:08+01:00' event: uuid: QOEZONY name: 'Harum minus nostrum ipsa.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Zachary Zulauf' email: ondricka.donna@example.net phone: '+18186331713' promocode: QNFSRK price_paid: amount: 352.67 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-23T11:26:17+01:00' event: uuid: RKTYIIXX name: 'Sequi saepe doloribus.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Mrs. Corine Ledner' email: lacy.zemlak@example.net phone: '+14139890509' promocode: VCUPH price_paid: amount: 369.95 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-22T15:02:08+01:00' event: uuid: UAVPADB name: 'Sed sed in.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Lewis Lubowitz' email: ydeckow@example.net phone: '+19546240479' promocode: XHAAKFDL price_paid: amount: 37.15 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: sr country_code: '' - purchase_date: '2025-12-22T15:02:08+01:00' event: uuid: DHWNPB name: 'Et sit doloribus.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Khalid Hagenes' email: velma67@example.org phone: '+17254539644' promocode: null price_paid: amount: 288.94 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: sr country_code: '' links: first: 'https://tic.rs/api/organizer/v1/tickets?page=1' last: 'https://tic.rs/api/organizer/v1/tickets?page=24' prev: null next: 'https://tic.rs/api/organizer/v1/tickets?page=2' meta: current_page: 1 from: 1 last_page: 24 links: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=1' label: '1' active: true - url: 'https://tic.rs/api/organizer/v1/tickets?page=2' label: '2' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=3' label: '3' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=4' label: '4' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=5' label: '5' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=6' label: '6' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=7' label: '7' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=8' label: '8' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=9' label: '9' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=10' label: '10' active: false - url: null label: ... active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=23' label: '23' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=24' label: '24' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=2' label: 'Sledeći »' active: false path: 'https://tic.rs/api/organizer/v1/tickets' per_page: 10 to: 10 total: 236 properties: data: type: array example: - purchase_date: '2025-12-29T12:20:33+01:00' event: uuid: WPWLVQ name: 'Quis adipisci molestias fugit.' date: '2026-12-15T00:00:00+01:00' customer: name: 'Alanis McLaughlin' email: bauch.marcelo@example.com phone: '+14303747043' promocode: null price_paid: amount: 867.62 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: DE - purchase_date: '2025-12-24T08:57:37+01:00' event: uuid: LQPPWQBE name: 'Voluptate accusamus ut.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Bridget Schaden' email: colt.balistreri@example.net phone: '+13806988637' promocode: SAUS price_paid: amount: 837.87 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: DE - purchase_date: '2025-12-23T13:05:54+01:00' event: uuid: BCHGSRZ name: 'Ratione iure impedit.' date: '2026-08-30T17:00:00+02:00' customer: name: 'Zachery Fadel' email: wortiz@example.com phone: '+16824842226' promocode: null price_paid: amount: 588.09 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T12:58:53+01:00' event: uuid: ZEZCRCVA name: 'Alias ratione dolores.' date: '2026-08-30T17:00:00+02:00' customer: name: 'Dr. Lucie Bauch' email: rhianna.corwin@example.org phone: '+19407091074' promocode: QZIQ price_paid: amount: 981.34 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T12:53:03+01:00' event: uuid: OLKGSSAA name: 'Ut dolores omnis.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Briana Konopelski' email: daniela80@example.net phone: '+15418676967' promocode: null price_paid: amount: 15.07 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: VN - purchase_date: '2025-12-23T11:31:49+01:00' event: uuid: NADSMR name: 'Odio dolorum voluptates.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Christian Klocko PhD' email: kenna.ortiz@example.org phone: '+17793152713' promocode: PVFAYB price_paid: amount: 234.46 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-23T11:28:08+01:00' event: uuid: QOEZONY name: 'Harum minus nostrum ipsa.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Zachary Zulauf' email: ondricka.donna@example.net phone: '+18186331713' promocode: QNFSRK price_paid: amount: 352.67 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-23T11:26:17+01:00' event: uuid: RKTYIIXX name: 'Sequi saepe doloribus.' date: '2027-01-31T10:00:00+01:00' customer: name: 'Mrs. Corine Ledner' email: lacy.zemlak@example.net phone: '+14139890509' promocode: VCUPH price_paid: amount: 369.95 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: ru country_code: '' - purchase_date: '2025-12-22T15:02:08+01:00' event: uuid: UAVPADB name: 'Sed sed in.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Lewis Lubowitz' email: ydeckow@example.net phone: '+19546240479' promocode: XHAAKFDL price_paid: amount: 37.15 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: sr country_code: '' - purchase_date: '2025-12-22T15:02:08+01:00' event: uuid: DHWNPB name: 'Et sit doloribus.' date: '2026-01-31T15:00:00+01:00' customer: name: 'Khalid Hagenes' email: velma67@example.org phone: '+17254539644' promocode: null price_paid: amount: 288.94 currency: id: 1 code: RSD utm: source: null medium: null campaign: null content: null term: null info: device_type: desktop interface_language: sr country_code: '' items: type: object properties: purchase_date: type: string example: '2025-12-29T12:20:33+01:00' event: type: object properties: uuid: type: string example: WPWLVQ name: type: string example: 'Quis adipisci molestias fugit.' date: type: string example: '2026-12-15T00:00:00+01:00' customer: type: object properties: name: type: string example: 'Alanis McLaughlin' email: type: string example: bauch.marcelo@example.com phone: type: string example: '+14303747043' promocode: type: string example: null price_paid: type: object properties: amount: type: number example: 867.62 currency: type: object properties: id: type: integer example: 1 code: type: string example: RSD utm: type: object properties: source: type: string example: null medium: type: string example: null campaign: type: string example: null content: type: string example: null term: type: string example: null info: type: object properties: device_type: type: string example: desktop interface_language: type: string example: ru country_code: type: string example: DE links: type: object properties: first: type: string example: 'https://tic.rs/api/organizer/v1/tickets?page=1' description: 'URL to the first page of results.' enum: [] last: type: string example: 'https://tic.rs/api/organizer/v1/tickets?page=24' description: 'URL to the last page of results.' enum: [] prev: type: string example: null description: 'URL to the previous page, or null.' enum: [] next: type: string example: 'https://tic.rs/api/organizer/v1/tickets?page=2' description: 'URL to the next page, or null.' enum: [] meta: type: object properties: current_page: type: integer example: 1 description: 'Current page number.' enum: [] from: type: integer example: 1 description: 'Index of the first item on the current page.' enum: [] last_page: type: integer example: 24 description: 'Total number of pages.' enum: [] links: type: array example: - url: null label: '« Prethodni' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=1' label: '1' active: true - url: 'https://tic.rs/api/organizer/v1/tickets?page=2' label: '2' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=3' label: '3' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=4' label: '4' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=5' label: '5' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=6' label: '6' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=7' label: '7' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=8' label: '8' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=9' label: '9' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=10' label: '10' active: false - url: null label: ... active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=23' label: '23' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=24' label: '24' active: false - url: 'https://tic.rs/api/organizer/v1/tickets?page=2' label: 'Sledeći »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Prethodni' active: type: boolean example: false path: type: string example: 'https://tic.rs/api/organizer/v1/tickets' description: 'Base URL of the paginated resource.' enum: [] per_page: type: integer example: 10 description: 'Number of items per page.' enum: [] to: type: integer example: 10 description: 'Index of the last item on the current page.' enum: [] total: type: integer example: 236 description: 'Total number of items across all pages.' enum: [] 401: description: 'Authentication failed' content: application/json: schema: type: object example: message: 'Invalid or inactive API key' properties: message: type: string example: 'Invalid or inactive API key' tags: - 'Organizer API' /api/payment/v1/orders: get: summary: Orders operationId: orders description: 'Returns a paginated list of orders created by the organizer. Each order object includes basic information, status, total amount and currency.' parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 100.' example: 20 required: false schema: type: integer description: 'Number of results per page. Maximum: 100.' example: 20 nullable: false - in: query name: search description: 'Search by number, customer name/email/phone, signature or public_token.' example: '123' required: false schema: type: string description: 'Search by number, customer name/email/phone, signature or public_token.' example: '123' nullable: false - in: query name: status description: 'Filter orders by status ID.' example: 2 required: false schema: type: integer description: 'Filter orders by status ID.' example: 2 nullable: false - in: query name: sort_by description: 'Sort field (created_at, number, status_id). Default: created_at.' example: created_at required: false schema: type: string description: 'Sort field (created_at, number, status_id). Default: created_at.' example: created_at nullable: false - in: query name: sort_dir description: 'Sort direction (asc, desc). Default: desc.' example: desc required: false schema: type: string description: 'Sort direction (asc, desc). Default: desc.' example: desc nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: 500: description: '' content: text/plain: schema: type: string example: '' tags: - 'Payment API' post: summary: 'Create order' operationId: createOrder description: 'Creates an order with provided items. Supported item types: event, unpublished_ticket, service, product. You can specify service/delivery/event dates when applicable. Currency code may be provided; defaults to RSD.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: { } tags: - 'Payment API' requestBody: required: true content: application/json: schema: type: object properties: customer: type: object description: '' example: [] nullable: false properties: name: type: string description: 'nullable Customer name.' example: 'Ivan Ivanov' nullable: true email: type: string description: 'nullable Customer email.' example: ivan@example.com nullable: true phone: type: string description: 'nullable Customer phone.' example: '+381600000000' nullable: true items: type: array description: 'List of items.' example: - architecto items: type: string currency: type: string description: 'nullable Currency code (ISO 4217).' example: EUR nullable: true success_url: type: string description: 'nullable URL to redirect the customer after successful payment.' example: 'https://example.com/success' nullable: true fail_url: type: string description: 'nullable URL to redirect the customer after failed/cancelled payment.' example: 'https://example.com/fail' nullable: true required: - items '/api/payment/v1/orders/{signature}': get: summary: 'Show order by signature' operationId: showOrderBySignature description: 'Returns full order information by unique signature, including items and transactions.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: 404: description: '' content: application/json: schema: type: object example: message: 'Not found' properties: message: type: string example: 'Not found' tags: - 'Payment API' parameters: - in: path name: signature description: 'Unique order signature.' example: 8b266d05a4aab061e6febf6d3c0ee6d7 required: true schema: type: string /api/payment/v1/transactions: get: summary: Transactions operationId: transactions description: 'Returns a paginated list of transactions (payments/refunds) related to all orders of the organizer.' parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 100.' example: 20 required: false schema: type: integer description: 'Number of results per page. Maximum: 100.' example: 20 nullable: false - in: query name: order_signature description: 'Filter by order signature.' example: 8b266d05a4aab061e6febf6d3c0ee6d7 required: false schema: type: string description: 'Filter by order signature.' example: 8b266d05a4aab061e6febf6d3c0ee6d7 nullable: false - in: query name: status description: 'Filter by transaction status (approved/failed).' example: approved required: false schema: type: string description: 'Filter by transaction status (approved/failed).' example: approved nullable: false - in: query name: date_from description: 'date Filter by created_at from (inclusive).' example: '2025-09-01' required: false schema: type: string description: 'date Filter by created_at from (inclusive).' example: '2025-09-01' nullable: false - in: query name: date_to description: 'date Filter by created_at to (inclusive).' example: '2025-09-30' required: false schema: type: string description: 'date Filter by created_at to (inclusive).' example: '2025-09-30' nullable: false - in: query name: sort_by description: 'Sort field (created_at, amount, status). Default: created_at.' example: created_at required: false schema: type: string description: 'Sort field (created_at, amount, status). Default: created_at.' example: created_at nullable: false - in: query name: sort_dir description: 'Sort direction (asc, desc). Default: desc.' example: desc required: false schema: type: string description: 'Sort direction (asc, desc). Default: desc.' example: desc nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: [] total: 0 current_page: 1 per_page: 20 properties: data: type: array example: [] total: type: integer example: 0 description: 'Total records' enum: [] current_page: type: integer example: 1 description: 'Current page number' enum: [] per_page: type: integer example: 20 description: 'Items per page' enum: [] tags: - 'Payment API' '/api/payment/v1/refunds/payment/{signature}': post: summary: 'Create refund request by payment signature' operationId: createRefundRequestByPaymentSignature description: 'Creates a refund request for a single payment identified by its signature. Returns the refund request signature.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: { } tags: - 'Payment API' parameters: - in: path name: signature description: 'Payment signature (OID).' example: 8b266d05a4aab061e6febf6d3c0ee6d7 required: true schema: type: string '/api/payment/v1/refunds/order/{signature}': post: summary: 'Create refund requests for all payments in an order' operationId: createRefundRequestsForAllPaymentsInAnOrder description: 'Cancels an order and creates refund requests for all its payments. Returns an array of refund request signatures.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: { } tags: - 'Payment API' parameters: - in: path name: signature description: 'Order signature.' example: 36bc1d644db04148b899b940451dc4ea required: true schema: type: string '/api/payment/v1/refunds/{signature}': get: summary: 'Show refund request by signature' operationId: showRefundRequestBySignature description: 'Returns detailed information about a single refund request.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: 404: description: '' content: application/json: schema: type: object example: message: 'Not found' properties: message: type: string example: 'Not found' tags: - 'Payment API' parameters: - in: path name: signature description: 'Refund request signature.' example: 2a7f9f9e-6e3a-4e1a-9b8a-1b2c3d4e5f6a required: true schema: type: string /api/payment/v1/refunds: get: summary: 'List refund requests' operationId: listRefundRequests description: 'Returns a paginated list of refund requests for the organizer.' parameters: - in: query name: page description: 'The page number.' example: 1 required: false schema: type: integer description: 'The page number.' example: 1 nullable: false - in: query name: per_page description: 'Number of results per page. Maximum: 100.' example: 20 required: false schema: type: integer description: 'Number of results per page. Maximum: 100.' example: 20 nullable: false - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: X-Language description: '' example: 'sr Language code (sr/en/ru). Example: sr' schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - signature: 1a9968c9-341e-4925-993b-e11cb6c199b6 status: pending platform_approval_status: pending payment_signature: f1bc9dd411917a9629a3955074b3196a refund_payment_signature: null created_at: '2025-11-21T12:49:50.000000Z' - signature: 8f409136-a236-4803-b778-49e3eb7e7b2a status: pending platform_approval_status: pending payment_signature: be61fa049b806571ce96a8187ebfc1ea refund_payment_signature: null created_at: '2025-11-21T12:49:50.000000Z' - signature: c00a4541-e7a5-40a1-a597-0cb0c2547e64 status: pending platform_approval_status: pending payment_signature: 721176055d9d93ea85b35a0396e5e842 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 29bcbb55-90af-40fc-aa78-9c3a31c65375 status: pending platform_approval_status: pending payment_signature: a098488736a42ac96a6b5c0751d950e5 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 70deb19e-1bdb-48f6-ac70-325aa145e702 status: pending platform_approval_status: pending payment_signature: cdb10a21e38421320f16636f466a24e0 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 02d5c41f-08f8-43a7-939e-b3543730fcbd status: completed platform_approval_status: approved payment_signature: 93aef08ef7df20d6bc4f920ecd1947cb refund_payment_signature: 2d4525905b5a1ca35139022f2b410d90 created_at: '2025-10-11T10:37:24.000000Z' - signature: 13480454-0ec3-4266-9bff-ea33bdad50b4 status: pending platform_approval_status: pending payment_signature: 8c1bf0bc21ff8804d51d75d15c78d447 refund_payment_signature: null created_at: '2025-10-11T10:34:32.000000Z' - signature: 1785db40-ee84-4401-bebb-6d2085b9b0c8 status: pending platform_approval_status: pending payment_signature: 5502c509c8937a158ed8102596905883 refund_payment_signature: null created_at: '2025-10-10T09:12:43.000000Z' - signature: 188e87d3-1d6a-414f-9399-686ae3ea5366 status: completed platform_approval_status: approved payment_signature: 14ced8c0885a92f7d8f0dd5183dbf7e0 refund_payment_signature: 5bc3278cd882789ebd5973de565b4a3c created_at: '2025-10-08T21:54:43.000000Z' - signature: 096591d7-c62c-4545-8ed6-b4423602560d status: completed platform_approval_status: approved payment_signature: efd2f7c1cd13cf0877f0c84c2cbfd408 refund_payment_signature: ecb472681aabae206880cb41036f7193 created_at: '2025-10-08T15:06:26.000000Z' total: 10 current_page: 1 per_page: 20 properties: data: type: array example: - signature: 1a9968c9-341e-4925-993b-e11cb6c199b6 status: pending platform_approval_status: pending payment_signature: f1bc9dd411917a9629a3955074b3196a refund_payment_signature: null created_at: '2025-11-21T12:49:50.000000Z' - signature: 8f409136-a236-4803-b778-49e3eb7e7b2a status: pending platform_approval_status: pending payment_signature: be61fa049b806571ce96a8187ebfc1ea refund_payment_signature: null created_at: '2025-11-21T12:49:50.000000Z' - signature: c00a4541-e7a5-40a1-a597-0cb0c2547e64 status: pending platform_approval_status: pending payment_signature: 721176055d9d93ea85b35a0396e5e842 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 29bcbb55-90af-40fc-aa78-9c3a31c65375 status: pending platform_approval_status: pending payment_signature: a098488736a42ac96a6b5c0751d950e5 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 70deb19e-1bdb-48f6-ac70-325aa145e702 status: pending platform_approval_status: pending payment_signature: cdb10a21e38421320f16636f466a24e0 refund_payment_signature: null created_at: '2025-11-21T12:49:49.000000Z' - signature: 02d5c41f-08f8-43a7-939e-b3543730fcbd status: completed platform_approval_status: approved payment_signature: 93aef08ef7df20d6bc4f920ecd1947cb refund_payment_signature: 2d4525905b5a1ca35139022f2b410d90 created_at: '2025-10-11T10:37:24.000000Z' - signature: 13480454-0ec3-4266-9bff-ea33bdad50b4 status: pending platform_approval_status: pending payment_signature: 8c1bf0bc21ff8804d51d75d15c78d447 refund_payment_signature: null created_at: '2025-10-11T10:34:32.000000Z' - signature: 1785db40-ee84-4401-bebb-6d2085b9b0c8 status: pending platform_approval_status: pending payment_signature: 5502c509c8937a158ed8102596905883 refund_payment_signature: null created_at: '2025-10-10T09:12:43.000000Z' - signature: 188e87d3-1d6a-414f-9399-686ae3ea5366 status: completed platform_approval_status: approved payment_signature: 14ced8c0885a92f7d8f0dd5183dbf7e0 refund_payment_signature: 5bc3278cd882789ebd5973de565b4a3c created_at: '2025-10-08T21:54:43.000000Z' - signature: 096591d7-c62c-4545-8ed6-b4423602560d status: completed platform_approval_status: approved payment_signature: efd2f7c1cd13cf0877f0c84c2cbfd408 refund_payment_signature: ecb472681aabae206880cb41036f7193 created_at: '2025-10-08T15:06:26.000000Z' items: type: object properties: signature: type: string example: 1a9968c9-341e-4925-993b-e11cb6c199b6 status: type: string example: pending platform_approval_status: type: string example: pending payment_signature: type: string example: f1bc9dd411917a9629a3955074b3196a refund_payment_signature: type: string example: null created_at: type: string example: '2025-11-21T12:49:50.000000Z' total: type: integer example: 10 description: 'Total records' enum: [] current_page: type: integer example: 1 description: 'Current page number' enum: [] per_page: type: integer example: 20 description: 'Items per page' enum: [] tags: - 'Payment API' /api/payment/v1/statuses/orders: get: summary: 'Order statuses dictionary' operationId: orderStatusesDictionary description: 'Returns dictionary of possible order statuses.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 1 name: Новый - id: 2 name: Оплачен - id: 3 name: 'Отправлен в логистику' - id: 4 name: 'В доставке' - id: 5 name: Выполнен - id: 6 name: Корзина - id: 7 name: Отменен properties: data: type: array example: - id: 1 name: Новый - id: 2 name: Оплачен - id: 3 name: 'Отправлен в логистику' - id: 4 name: 'В доставке' - id: 5 name: Выполнен - id: 6 name: Корзина - id: 7 name: Отменен items: type: object properties: id: type: integer example: 1 name: type: string example: Новый tags: - 'Payment API' /api/payment/v1/statuses/transactions: get: summary: 'Transaction statuses dictionary' operationId: transactionStatusesDictionary description: 'Returns dictionary of possible transaction statuses.' parameters: - in: header name: X-Api-Key description: '' example: '{YOUR_AUTH_KEY}' schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - code: approved name: Approved - code: failed name: Failed properties: data: type: array example: - code: approved name: Approved - code: failed name: Failed items: type: object properties: code: type: string example: approved name: type: string example: Approved tags: - 'Payment API'