INTRODUCTION
Dokumen ini ditujukan untuk menjelaskan tentang Open API (application programming interface) tiketapasaja untuk tiketbox maupun sponsor yang memungkinkan sponsor maupun tiketbox mengintegrasi transaksi penjualan tiket secara langsung antara sistem tiketbox maupun sponsor dengan sistem tiketapasaja.
Panduan ini ditujukan untuk PIC teknis / sistem developer yang bertanggung jawab untuk melakukan pengembangan dan integrasi untuk berkomunikasi dengan sistem yang kami miliki terkait dengan penjualan tiket online.
Document Sign-Off
Version 1.0 | |||
---|---|---|---|
Role | Name | Signature | Date |
Author | Eko Jiono | ||
Reviewer | Anggun Indra Saputra | ||
Approver | Ibnu Farid Iskandar |
Integrasi
- Tiketbox or Sponsor Request data ke sistem Tiketapasaja
- Tiketapasaja memberikan callback sesuai request
Authentication/Sign
Melakukan Authentikasi dengan appid dan key_secret yang sudah di sediakan :

GET http://api.tiketapasaja.com/v1/sign?appid=[appid]&key_secret=[key_secret]
Parameter
appid | : integer | *required |
key_secret | : string | *required |
Response Success JSON
{ "code": 200, "status": "success", "token": "c150729d26284ecaaca6c3c67d2856e1866201a4" }
Response Filed JSON
{ "code": 301, "status": "error", "message": "appid dan key_secret tidak boleh kosong" } or { "code": 302, "status": "error", "message": "appid atau key_secret tidak valid atau status api tidak aktif." }
FLOW ORDERS

Request List Events
Request data list event dengan token yang sudah di dapatkan :
GET http://api.tiketapasaja.com/v1/events?token=[token]
Parameter
token | : string | *required |
Response Success JSON
{ "code": 200, "status": "success", "result": [ { "event_id": 132, "event_name": "JOGJAROCKARTA ROCK FESTIVAL", "event_slug": "jogjarockarta-rock-festival", "event_image": "tiketapasaja_6156120170912135009.jpg", "event_start": "2017-09-29 14:00:00", "event_finish": "2017-09-30 23:00:00", "event_location": "Bokoharjo, Kec. Prambanan, Kabupaten Sleman, Daerah Istimewa Yogyakarta", "event_status": "active", "popup_message": "", "popup_message_english": "", "buy_other_category": 1, "timeout_data_entry": 50, "timeout_payment": 60, "category_ticket": [ { "id": 217, "event_id": 132, "category_name": "1st SHOW | FESTIVAL A| 29 Sept 2017", "category_slug": "1st-show-festival-a-29-sept-2017", "disable": "yes", "date_open_ticket": "2017-08-04 10:00:00", "date_close_ticket": "2017-09-27 23:00:00", "type_ticket": "no seat", "price": 0 }, { "id": 218, "event_id": 132, "category_name": "1st SHOW | FESTIVAL B|29 Sept 2017", "category_slug": "1st-show-festival-b29-sept-2017", "disable": "yes", "date_open_ticket": "2017-08-04 10:00:00", "date_close_ticket": "2017-09-27 21:00:00", "type_ticket": "no seat", "price": 0 } ] }, { "event_id": 159, "event_name": "DASH BERLIN", "event_slug": "dash-berlin", "event_image": "tiketapasaja_8683620170904142844.jpg", "event_start": "2017-09-27 21:00:00", "event_finish": "2017-09-27 23:00:00", "event_location": "Jl. Magelang KM.5,5, Sinduadi, Mlati, Kabupaten Sleman, Daerah Istimewa Yogyakarta 55284", "event_status": "active", "popup_message": "", "popup_message_english": "", "buy_other_category": 1, "timeout_data_entry": 50, "timeout_payment": 60, "category_ticket": [ { "id": 222, "event_id": 159, "category_name": "EARLY BIRD", "category_slug": "early-bird", "disable": "no", "date_open_ticket": "2017-08-31 15:00:00", "date_close_ticket": "2017-09-26 21:00:00", "type_ticket": "no seat", "price": 300000 } ] } }
Response Filed JSON
{ "code": 301, "status": "error", "message": "token tidak boleh kosong" } or { "code": 304, "status": "error", "message": "token tidak valid" }
Request Detail Event
Request data detail event dengan token yang sudah di dapatkan :
GET http://api.tiketapasaja.com/v1/event?token=[token]&event_id=[event_id]
Parameter
token | : string | *required |
event_id | : integer | *required |
Response Success JSON
{ "code": 200, "status": "success", "result": { "event_id": 131, "event_name": "LA LA LAND IN CONCERT", "event_slug": "la-la-land-in-concert", "event_image": "tiketapasaja_3496820170714103551.jpeg", "event_start": "2017-11-04 18:00:00", "event_finish": "2017-11-05 21:00:00", "event_location": "Jl. Prof. DR. Satrio, RT.18/RW.4, Karet Kuningan, Setia Budi, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12940", "popup_message": "", "popup_message_english": "Sorry System In Repair, you can place your order again on Tuesday 25th july 2017. Thank You", "category_ticket": [ { "id": 199, "event_id": 131, "category_name": "DAY 1 - DIAMOND", "category_slug": "day-1-diamond", "date_open_ticket": "2017-07-15 12:00:00", "date_close_ticket": "2017-11-02 21:00:00", "type_ticket": "seat", "price": 2750000 }, { "id": 200, "event_id": 131, "category_name": "DAY 1 - PLATINUM", "category_slug": "day-1-platinum", "date_open_ticket": "2017-07-15 12:00:00", "date_close_ticket": "2017-11-02 21:00:00", "type_ticket": "seat", "price": 2000000 }, { "id": 205, "event_id": 131, "category_name": "DAY 2 - DIAMOND", "category_slug": "day-2-diamond", "date_open_ticket": "2017-07-15 12:00:00", "date_close_ticket": "2017-11-02 21:00:00", "type_ticket": "seat", "price": 2750000 }, { "id": 206, "event_id": 131, "category_name": "DAY 2 - PLATINUM", "category_slug": "day-2-platinum", "date_open_ticket": "2017-07-15 12:00:00", "date_close_ticket": "2017-11-02 21:00:00", "type_ticket": "seat", "price": 2000000 }, { "id": 207, "event_id": 131, "category_name": "DAY 2 - GOLD", "category_slug": "day-2-gold", "date_open_ticket": "2017-07-15 12:00:00", "date_close_ticket": "2017-11-02 23:00:00", "type_ticket": "seat", "price": 1250000 } ] } }
Response Filed JSON
{ "code": 301, "status": "error", "message": "event_id tidak boleh kosong" }
Request Availables Seat by Event
Request kuota tersedia berdasarkan event_id dan cat_id :
GET http://api.tiketapasaja.com/v1/availableseats?token=[token]&event_id=[event_id]&cat_id=[cat_id]
Parameter
token | : string | *required |
event_id | : integer | *required |
cat_id | : integer | *required |
Response Success | type_ticket='no seat' JSON
{ "code": 200, "status": "success", "result": { "event_id": "1192", "cat_id": 210, "type_ticket": "no seat", "min": 2, "max": 2, "available": 1344 } }
Response Success | type_ticket='seat' JSON
{ "code": 200, "status": "success", "result": { "event_id": 131, "cat_id": 211, "type_ticket": "seat", "min": 5, "max": 5, "available": [ { "id": 294976, "block_name": "B-982" }, { "id": 294977, "block_name": "B-983" }, { "id": 295020, "block_name": "C-26" }, { "id": 295021, "block_name": "C-27" } ] } }
Response Filed JSON
{ "code": 301, "status": "error", "message": "cat_id dan event_id tidak boleh kosong" } or { "code": 310, "status": "error", "message": "event_id tidak valid" } or { "code": 308, "status": "error", "message": "cat_id tidak valid" }
Send post orders
Kirim data orders:
POST http://api.tiketapasaja.com/v1/orders
Parameter
token | : string | *required | |||||||||
event_id | : integer | *required | |||||||||
name | : string | *required | |||||||||
: string | *required | ||||||||||
phone | : string | *required | |||||||||
id_number | : integer | (optional) | |||||||||
gender | : integer | *required [1=Male, 0=Female] | |||||||||
place_of_birth | : string | (optional) | |||||||||
date_of_birth | : date | (optional) [YYYY-MM-DD] | |||||||||
city | : string | (optional) | |||||||||
detail | : array |
|
Berikut contoh data orders JSON
{ "token": "27bb6123ccd6b5d413797da32a9ec586833e9a98", "event_id" : 131, "name" : "namapemesan", "email" : "[email protected]", "phone": "0329429834", "id_number" : 902348023423292, "gender": 1, "place_of_birth" : "Sleman", "date_of_birth" : "2017-01-01", "city": "Sleman", "detail": [{ "cat_id": 199, "type_ticket" : "seat", "data" : [294976,294977,295020,295021] },{ "cat_id": 200, "type_ticket" : "no seat", "data":5 }] }
Response Success JSON
{ "code": 200, "status": "success", "result": { "event_id": 131, "uuid": "6332a7eb1c320", "booking_id": 35318, "code_ticket": "D106A3", "name": "namapemesan", "email": "[email protected]", "phone": "0329429834", "status": "waiting", "expired_time_order": "2020-11-20 20:00:00", "detail": [ { "cat_id": 199, "code_seat": "45AC60307C", "price": 2750000, "seat_name": "F - 15" }, { "cat_id": 199, "code_seat": "A90F88A050", "price": 5500000, "seat_name": "F - 22" } ] } }
Response Filed JSON
{ "code": 311, "status": "error", "message": "Kursi sudah di pesan orang lain lebih dulu. " }
Change Status orders
Update data status:
POST http://api.tiketapasaja.com/v1/updatestatus
Parameter
token | : string | *required |
booking_id | : integer | *required |
status | : string | *required (approve | reject) |
send_eticket | : integer | *required default (0) (0 = no|1 = yes) |
message | : string | *required |
Berikut contoh data update status order JSON
{ "token": "27bb6123ccd6b5d413797da32a9ec586833e9a98", "booking_id" : 35318, "status" : "approve", "send_eticket": 1, "message": "sukses" }
{ "token": "27bb6123ccd6b5d413797da32a9ec586833e9a98", "booking_id" : 35318, "status" : "reject", "send_eticket": 0, "message": "Gagal melakukan transaksi" }
Jika berhasil maka akan mendapat respon JSON
{ "code": 200, "status": "success", "result": { "event_id": 131, "booking_id": 35318, "code_ticket": "D106A3", "status": "reject", "message": "Data berhasil diperbaharui" } } or { "code": 200, "status": "success", "result": { "event_id": 131, "booking_id": 35321, "code_ticket": "881576", "status": "approve", "message": "data berhasil diperbaharui" } } or { "code": 200, "status": "success", "message": "status order saat ini approve" }
Jika gagal maka akan mendapat respon JSON
{ "code": 315, "status": "error", "message": "Gagal proses update status order.. " } or { "code": 314, "status": "error", "message": "status reject tidak bisa di ubah menjadi waiting maupun approve" } or { "code": 313, "status": "error", "message": "booking_id tidak valid" }
Resend Eticket
Resend Eticket bisa dilakukan apabila status order sudah approve dengan parameter sebagai berikut :

Kirim data resend eticket:
POST http://api.tiketapasaja.com/v1/resend-eticket
Parameter
token | : string | *required |
booking_id | : integer | *required |
{ "token": "27bb6123ccd6b5d413797da32a9ec586833e9a98", "booking_id" : 35318 }
Berikut contoh balikan jika berhasil JSON
{ "code": 200, "status": "success", "result": { "event_id": 131, "booking_id": 35323, "code_ticket": "15B160", "status": "approve", "eticket": "https://dev-event.tiketapasaja.com/evoucher/6332a7eb1c320", "message": "Berhasil resend E-Ticket" } }
Berikut contoh balikan jika gagal JSON
{ "code": 313, "status": "error", "message": "booking_id tidak valid" } or { "code": 301, "status": "error", "message": "booking_id tidak boleh kosong" } or { "code": 304, "status": "error", "message": "token tidak valid" }
Request Summary Report Global Sales
Request report global sales dengan token yang sudah di dapatkan :
POST http://api.tiketapasaja.com/v1/summary-report
Parameter : Body
token | : string | *required Unthentikasi bisa lihat (disini) |
event_id | : integer | *required |
cat_id | : integer | null | (optional) |
date_range | : string | (optional) ex : 2017-01-01 20:23:23 - 2017-01-30 20:23:23 |
Response Success JSON
{ "code": 200, "status": "success", "result": [ { "no": 1, "category_ticket": "Red Area Premiere Grand Stand B - Sec 2 Weekend Pass", "price": "2.150.000", "tax": "15% (410.500)", "discount": "-", "qty": 6, "total": "18.000.000" }, { "no": 2, "category_ticket": "Tosca Area Main Grand Stand 2 - Sec 4 Weekend Pass", "price": "850.000", "tax": "15% (271.500)", "discount": "-", "qty": 16, "total": "34.000.000" }, { "no": 3, "category_ticket": "Blue Area Main Grand Stand 1A - Sec 1 Weekend Pass", "price": "2.300.000", "tax": "15% (302.500)", "discount": "NONTON BALAP 10%
(235.000)", "qty": 10, "total": "24.600.000" }, { "no": 4, "category_ticket": "Yellow Area Standard Grand Stand 1 - Sec 5 Weekend Pass", "price": "990.000", "tax": "15% (100.250)", "discount": "NONTON BALAP 10%
(99.500)", "qty": 5, "total": "5.200.750" } ], "total_ticket": "434", "grandtotal": "8.195.250" }
Response Filed JSON
{ "code": 301, "status": "error", "message": "event_id tidak boleh kosong" }
Request Summary Report Global Tiket
Request report global tiket dengan token yang sudah di dapatkan :
POST http://api.tiketapasaja.com/v1/report-ticket
Parameter : Body
token | : string | *required Unthentikasi bisa lihat (disini) |
event_id | : integer | *required |
cat_id | : integer | null | (optional) |
Response Success JSON
{ "code": 200, "status": "success", "result": [ { "no": 1, "kategori_tiket": "Blue Area
Main Grand Stand 1A - Sec 3 Weekend Pass", "terjual": "3", "tersedia": "10", "total_tiket": "13" }, { "no": 2, "kategori_tiket": "Purple Area
West Grand Stand - Sec 5 Weekend Pass", "terjual": "5", "tersedia": "15", "total_tiket": "20" } ], "total_tiket_terjual": "498", "total_tiket_tersedia": "744", "global_tiket": "1.042" }
Response Filed JSON
{ "code": 301, "status": "error", "message": "event_id tidak boleh kosong" }
Request Report Order Detail
Request report global tiket dengan token yang sudah di dapatkan :
POST http://api.tiketapasaja.com/v1/report-order-detail
Parameter : Body
token | : string | *required Unthentikasi bisa lihat (disini) |
event_id | : integer | *required |
cat_id | : integer | null | (optional) |
status | : string | (optional) ex : waiting | approve | reject |
Response Success JSON
{ "code": 200, "status": "success", "result": [ { "booking_id": 22934, "ticket_seat_no": "A_91", "barcode": "MGTA9BK4BCD6BA4", "event_name": "World Superbike 2021 Indonesia Grand Prix Weekend Pass", "category": "Red Area Premiere Grand Stand A - Sec 1 Weekend Pass", "name": "Dedy Fardiansyah, SE", "id_number": "1234567890", "email": "[email protected]", "phone": "081315861983", "ttl": "1983-01-01", "eticket": null }, { "booking_id": 22535, "ticket_seat_no": "A_131", "barcode": "MGTA98B84BBDA3", "event_name": "World Superbike 2021 Indonesia Grand Prix Weekend Pass", "category": "Grey Area Standard Grand Stand 2 - Sec 1 Weekend Pass", "name": "Rangga Idris Affandi", "id_number": "1234567890", "email": "[email protected]", "phone": "085331834678", "ttl": "1995-07-29", "eticket": null }, { "booking_id": 22904, "ticket_seat_no": "A-105", "barcode": "MGTSCKH2E5EDED", "event_name": "World Superbike 2021 Indonesia Grand Prix Weekend Pass", "category": "Yellow Area Standard Grand Stand 1 - Sec 5 Weekend Pass", "name": "Chaka Oktavian", "id_number": "1234567890", "email": "[email protected]", "phone": "081568477452", "ttl": "1988-12-07", "eticket": null } ] }
Response Filed JSON
{ "code": 301, "status": "error", "message": "event_id tidak boleh kosong" }
Error Code
Berikut ada beberapa list code berserta keterangannya jika terjadi error :
List Code
200 | : Success |
301 | : Parameter dengan tanda (*) tidak boleh kosong. |
302 | : appid atau key_secret tidak valid atau status api tidak aktif. |
303 | : Gagal proses request token. |
304 | : token tidak valid. |
305 | : Gagal request daftar event. |
306 | : Gagal request detail event. |
307 | : Gagal request data kuota availabe. |
308 | : cat_id tidak valid. |
309 | : Kuota available sudah habis atau sold out. |
310 | : event_id tidak valid. atau EVENT XXX SUDAH LEWAT |
311 | :
|
312 | : Gagal proses data order. |
313 | : booking_id tidak valid. |
314 | : Status reject tidak bisa di ubah menjadi waiting maupun approve. |
315 | : Gagal proses update status order. |
315 | : Gagal proses resend e-ticket. |
About
Tiketapasaja.com