{"swagger":"2.0","info":{"version":"1.0.0","title":"Ticketco public API","description":"Documentation of TicketCo public API used by 3-rd party services","termsOfService":"","contact":{"name":"Innocode AS"}},"tags":[{"name":"events","description":"Events operations"},{"name":"item_grosses","description":"Transaction data operations"},{"name":"customers","description":"Customers information"},{"name":"memberships","description":"Memberships information"}],"basePath":"/api/public/v1","consumes":["application/json"],"produces":["application/json"],"schemes":["http"],"paths":{"/events/{id}":{"get":{"description":"Returns detailed information about specific event","summary":"Find Event by ID","operationId":"findEventById","produces":["application/json"],"tags":["events"],"parameters":[{"name":"token","in":"query","description":"Authentication token","required":true,"type":"string"},{"name":"id","in":"path","description":"Event ID","required":true,"type":"string"}],"responses":{"200":{"description":"events","schema":{"$ref":"#/definitions/Event"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/ErrorModel"}}}}},"/events":{"get":{"description":"Returns all active/ended events that are related to organizer/division \n\n                               Private events not returning by default. \n\n                               NOTE: pagination, filter by status and private events will appear 25.04.2018","summary":"Events","operationId":"findEvents","produces":["application/json"],"tags":["events"],"parameters":[{"name":"token","in":"query","description":"Authentication token","required":true,"type":"string"},{"name":"type","in":"query","description":"Search event by type: Event, SeasonPassEvent, SubscriptionEvent ...","required":false,"type":"string"},{"name":"title","in":"query","description":"Search event by title","required":false,"type":"string"},{"name":"street_address","in":"query","description":"Search event by street address","required":false,"type":"string"},{"name":"location","in":"query","description":"Search event by location","required":false,"type":"string"},{"name":"url","in":"query","description":"Search event by url","required":false,"type":"string"},{"name":"start_at","in":"query","description":"Filter event by start date","required":false,"type":"string"},{"name":"status","in":"query","description":"Filter events by status: active or ended","required":false,"type":"string"},{"name":"private","in":"query","description":"To return private events set parameter to true","required":false,"type":"string"},{"name":"page","in":"query","description":"Page number. DEFAULT: 1","required":false,"type":"integer"}],"responses":{"200":{"description":"events","schema":{"$ref":"#/definitions/PublicEventResponse"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/ErrorModel"}}}}},"/events/{event_id}/status":{"get":{"description":"Returns status of event","summary":"Event status","operationId":"findEventStatus","produces":["application/json"],"tags":["events"],"parameters":[{"name":"token","in":"query","description":"Authentication token","required":true,"type":"string"},{"name":"event_id","in":"path","description":"Event ID","required":true,"type":"string"}],"responses":{"200":{"description":"Event status","schema":{"$ref":"#/definitions/EventStatusResponse"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/ErrorModel"}}}}},"/item_grosses":{"get":{"description":"Return transactions by items related to organizer/division.","summary":"ItemGrosses","produces":["application/json"],"tags":["item_grosses"],"parameters":[{"name":"token","in":"query","description":"Authentication Token that identifies current user","required":true,"type":"string"},{"name":"customer_id","in":"query","description":"Search transaction by Customer ID","required":false,"type":"string"},{"name":"invoice_uuid","in":"query","description":"Search transaction by Invoice UUID","required":false,"type":"string"},{"name":"event_id","in":"query","description":"Search transaction by Event ID","required":false,"type":"string"},{"name":"item_type_id","in":"query","description":"Search transaction by Item Type ID","required":false,"type":"string"},{"name":"ref_number","in":"query","description":"Search transaction by Reference Number","required":false,"type":"string"},{"name":"buyer_email","in":"query","description":"Search transaction by Buyer Email","required":false,"type":"string"},{"name":"buyer_phone","in":"query","description":"[DEPRECATED] Search transaction by Buyer Phone","required":false,"type":"string"},{"name":"phone","in":"query","description":"Search transaction by Buyer Phone or Holder Phone","required":false,"type":"string"},{"name":"pii","in":"query","description":"Include Personal Identifiable Information (PII) into response, by default is \"true\". You should pass \"false\" to exclude PII from response.","required":false,"type":"string"},{"name":"page","in":"query","description":"Page number. DEFAULT: 1","required":false,"type":"integer"}],"responses":{"200":{"description":"item_grosses","schema":{"$ref":"#/definitions/PublicItemGrossResponse"}},"401":{"description":"Authentication token is missing","schema":{"$ref":"#/definitions/ErrorModel"}},"500":{"description":"Internal Server Error","schema":{"$ref":"#/definitions/ErrorModel"}}}}},"/customers":{"get":{"description":"Returns customers that are related to organizer events. \n\n                               Key 'last_update_at' - will return current timestamp. \n\n                               You can use it when you will need to get new customers, or updated. \n\n                               Save this string timestamp value when you will grab all customers, and send us back to get new and updated customers, so you will not need to iterate through all customers each time. \n\n                               Don't save 'last_update_at' when you do simple search.","summary":"Customers","produces":["application/json"],"tags":["customers"],"parameters":[{"name":"token","in":"query","description":"Authentication Token that identifies current user","required":true,"type":"string"},{"name":"id","in":"query","description":"Find by ID","required":false,"type":"string"},{"name":"email","in":"query","description":"Find by E-mail","required":false,"type":"string"},{"name":"page","in":"query","description":"Page number. DEFAULT: 1","required":false,"type":"integer"},{"name":"last_update_at","in":"query","description":"Returns current timestamp","required":false,"type":"string"}],"responses":{"200":{"description":"customers list","schema":{"$ref":"#/definitions/CustomersResponse"}}}}},"/memberships/{id}":{"get":{"description":"Returns information about membership","summary":"Find Membership by ID","operationId":"findMembershipById","produces":["application/json"],"tags":["memberships"],"parameters":[{"name":"token","in":"query","description":"Authentication token","required":true,"type":"string"},{"name":"page","in":"query","description":"Page number. DEFAULT: 1","required":false,"type":"integer"},{"name":"id","in":"path","description":"Membership ID","required":true,"type":"string"}],"responses":{"200":{"description":"membership","schema":{"$ref":"#/definitions/Membership"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/ErrorModel"}}}}}},"definitions":{"ErrorModel":{"required":["error"],"properties":{"error":{"type":"string"}}},"ItemCheckinErrorModel":{"required":["error"],"description":"errors for items that are failed to be checked in.","properties":{"id":{"type":"integer"},"status":{"type":"array","items":{"type":"string","enum":["already_checked_in","already_new","not_found","unknown","unknown_action"],"default":"not_found"}},"error":{"type":"string"}}},"PublicEventResponse":{"properties":{"events":{"type":"array","items":{"$ref":"#/definitions/Event"}}}},"EventStatusResponse":{"properties":{"status":{"type":"string","description":"\n            Event status. Can be one of:\n            'available' - When event has tickets for sale;\n            'sold' - When event had sold all tickets;\n            'free' - When event have no tickets;\n            'ended' - When event is ended;\n            \"ticket sales will start - 03/02/2015 15:00 +0000\" - When event has tickets which will be available in the future(dd/mm/yyyy HH:MM +0000)\n                        ","enum":["available","sold","free","ended"],"default":"available"}}},"Event":{"properties":{"id":{"type":"integer","format":"int64","description":"Primary Event ID","default":1},"title":{"type":"string","description":"Event title","default":"Red Hot Chilly pappers"},"description":{"type":"string","description":"Event description. Sanitized HTML"},"location_name":{"type":"string","description":"Locatio name","default":"Concert hall"},"street_address":{"type":"string","description":"Street address","default":"Munkedamsveien 14"},"seating_arrangement_id":{"type":"integer","format":"int64","description":"Seating Arrangement ID"},"restrictions":{"type":"string","description":"Description of restictions if present."},"waiver":{"type":"string","description":""},"type":{"type":"string","description":"Type of the Event"},"sections":{"type":"array","items":{"type":"integer","format":"int64","example":136}},"organizer_id":{"type":"integer","format":"int64","description":"Organizer ID","example":123},"boca_template_id":{"type":"integer","description":"If Event has linked Boca Template - returns Boca template IDReturns nil otherwise"},"start_at":{"type":"string","format":"date-time","description":"Event start date"},"end_at":{"type":"string","format":"date-time","description":"Event end date"},"image":{"$ref":"#/definitions/Image"},"event_maximum_price":{"type":"integer","description":"Maximum price for a ticket in event","default":"500"},"event_minimum_price":{"type":"integer","description":"Minimum price for a ticket in event","default":"200"},"event_categories":{"type":"string","description":"Event Categories","default":"music, family festivals"},"event_item_types":{"type":"array","items":{"$ref":"#/definitions/EventItemType"}},"capacities":{"type":"array","items":{"$ref":"#/definitions/Capacity"}},"latitude":{"type":"number","format":"double","description":"Location latitude","default":5.3089979},"longitude":{"type":"number","format":"double","description":"Location longitude","default":60.3955789},"desktop_link":{"type":"string","description":"Link to page for desktop browsers","default":"{organizer}.ticketco.events/{territory}/{locale}/e/{event_path}/{tracking_link}"},"mobile_link":{"type":"string","description":"Link to page for mobile browsers","default":"{organizer}.ticketco.events/{territory}/{locale}/m/e/{event_path}/{tracking_link}"},"tags":{"type":"array","items":{"type":"string","example":"football"}},"production_id":{"type":"integer","description":"External Production ID"},"production_name":{"type":"string","description":"External Production Name"},"external_id":{"type":"integer"},"external_name":{"type":"string","default":"Some Name"},"locale_urls":{"type":"object","default":{"en":"http://ticketco.events/path_to_resource/en","nb":"http://ticketco.events/path_to_resource/nb"}},"total_capacities":{"type":"integer","example":1500},"total_available":{"type":"integer","example":357},"total_sold":{"type":"integer","example":590},"event_average_price":{"type":"number","example":145.5},"seat_map":{"type":"string","description":"Name of the Seatmap, related to the Event","example":"My Cool Stadion 2022-10"},"thumbnail_url":{"type":"string","example":"url_path/filename.extension"}}},"Url":{"type":"string","properties":{"url":{"type":"string","description":"Image url"}}},"Image":{"type":"object","properties":{"url":{"type":"string","description":"Image url"},"default":{"$ref":"#/definitions/Url"},"iphone2x":{"$ref":"#/definitions/Url"}}},"EventItemType":{"properties":{"id":{"type":"integer","description":"Item Type ID","example":123},"title":{"type":"string","description":"Title"},"price":{"type":"integer","description":"Ticket Price","default":250},"fee":{"type":"integer","description":"Ticket Fee","default":15},"status":{"type":"string","description":"Sales Status","enum":["available","sold"],"default":"available"}}},"Capacity":{"properties":{"capacity_id":{"type":"integer","description":"Capacity ID","example":1023},"name":{"type":"string","description":"Name of the Capacity","example":"Premium tickets"},"status":{"type":"string","description":"Status of the Capacity. Could be \"sold\" or \"available\"","example":"sold"}}},"PublicItemGrossResponse":{"properties":{"item_grosses":{"type":"array","items":{"$ref":"#/definitions/ItemGross"}}}},"CustomersResponse":{"properties":{"customers":{"type":"array","items":{"$ref":"#/definitions/Customer"}},"last_update_at":{"type":"string","format":"date-time"}}},"Customer":{"properties":{"customer_id":{"type":"integer","format":"int64","default":1},"first_name":{"type":"string","default":"James"},"last_name":{"type":"string","default":"Bond"},"company_name":{"type":"string","default":"MI6"},"email":{"type":"string","default":"bond@mail.com"},"phone":{"type":"string","default":"1234777"}}},"ItemGross":{"properties":{"id":{"type":"integer","format":"int64","description":"Transaction ID","default":1},"transaction_datestamp":{"type":"string","description":"Transaction date","default":"2018-08-31T12:15:40+00:00"},"order_id":{"type":"integer","description":"Order ID","default":1},"settlement_types":{"type":"string","description":"Payment types","default":["gift_card","cash"]},"uuid":{"type":"string","description":"Item UUID","default":"1234567890123456"},"ref_number":{"type":"string","description":"Item Reference Number","default":"abcde"},"section_name":{"type":"string","description":"Item Section Name","default":"Left A"},"row":{"type":"string","description":"Item Row Number","default":"1"},"seat":{"type":"string","description":"Item Seat Number","default":"11"},"event_id":{"type":"integer","description":"Event ID","default":1},"event_name":{"type":"string","description":"Event Name","default":"Best event"},"event_tags":{"type":"string","description":"Event Tags","default":["Best, 2018"]},"start_at":{"type":"string","description":"Event Start At Time","default":"2018-09-20T22:00:00"},"end_at":{"type":"string","description":"Event End At Time","default":"2018-09-20T23:00:00"},"event_categories":{"type":"string","description":"Event Categories","default":"music, \"theater/shows\""},"answers":{"type":"string","description":"Responses to questions","default":"My t-shirt size M"},"questions":{"type":"array","items":{"type":"string","description":"Question body","example":"Some good question"}},"item_type_id":{"type":"integer","description":"Item Type ID","default":1},"item_type_title":{"type":"string","description":"Item Type Title","default":"Early tickets"},"item_type_tags":{"type":"string","description":"Item Type Tags","default":["early_bird"]},"customer_id":{"type":"integer","description":"Customer ID","default":1},"buyer_first_name":{"type":"string","description":"Buyer First Name","default":"James"},"buyer_last_name":{"type":"string","description":"Buyer Last Name","default":"Bond"},"buyer_email":{"type":"string","description":"Buyer E-mail","default":"jbond@mail.com"},"buyer_phone":{"type":"string","description":"Buyer Phone","default":"1234567"},"buyer_company_name":{"type":"string","description":"Buyer Company Name","default":"MI6"},"holder_first_name":{"type":"string","description":"Holder First Name","default":"Miranda"},"holder_last_name":{"type":"string","description":"Holder Last Name","default":"Frost"},"holder_email":{"type":"string","description":"Holder E-mail","default":"m.frost@mail.com"},"holder_phone":{"type":"string","description":"Holder Phone","default":"1234568"},"holder_company_name":{"type":"string","description":"Holder Company Name","default":"British Government"},"holder_address":{"type":"object","items":{"$ref":"#/definitions/HolderAddress"}},"note":{"type":"string","description":"Note","default":"Some notices"},"checked_in_at":{"type":"string","description":"Checked In At","default":"2018-08-31T12:00:30+00:00"},"checked_out_at":{"type":"string","description":"Checkin Out At","default":"2018-08-31T12:10:40+00:00"},"actual_price":{"type":"string","description":"Actual Price","default":"100"},"price":{"type":"string","description":"Price","default":"120.00"},"fee":{"type":"string","description":"Fee","default":"20.00"},"vat":{"type":"string","description":"VAT","default":"0.00"},"ticketco_fee":{"type":"string","description":"TicketCo Fee","default":"10.00"},"ticketco_vat":{"type":"string","description":"Ticketco VAT","default":"0.00"},"ticketco_total_fee":{"type":"string","description":"TicketCo Total Fee","default":"10.00"},"invoice_uuid":{"type":"string","description":"Invoice UUID","default":"123abc"},"production_id":{"type":"integer","description":"External Production ID"},"production_name":{"type":"string","description":"External Production Name"},"external_id":{"type":"integer"},"external_name":{"type":"string","default":"Some Name"},"transaction_type":{"type":"string","description":"Transaction Type","example":"purchase"},"discount":{"type":"string","description":"Name of the applied Discount if present. Otherwise returns null.","example":"New Year sale"},"last_updated":{"type":"string","description":"Last time of update in ISO 8601 format","example":"2022-07-05T09:40:54+00:00"},"expires_at":{"type":"string","description":"Expiration time in ISO 8601 format. Can be null","example":"2022-07-05T09:40:46+00:00"},"promocode":{"type":"string","description":"Name of Promocode if present. Otherwise returns null.","example":"PROMO123"},"capacity_name":{"type":"string","description":"Capacity name","example":"Stadium seats"}}},"HolderAddress":{"properties":{"street":{"type":"string","description":"Holder street name","default":"Some street"},"zip":{"type":"string","description":"Holder zip code","default":"345343435"},"city":{"type":"string","description":"Holder city name","default":"City"},"country":{"type":"string","description":"Holder country name","default":"Norway"}}},"Membership":{"properties":{"id":{"type":"integer","format":"int64","description":"Membership ID","default":1},"uuid":{"type":"string","description":"Membership UUID","default":"94278a36eda5f2c7d3bf"},"title":{"type":"string","description":"Membership title","default":"Some membership"},"created_at":{"type":"string","format":"date-time","description":"Membership creation date","default":"2018-08-31T12:15:40+00:00"},"members_count":{"type":"integer","description":"Number of members in the membership","default":1},"members":{"type":"array","items":{"$ref":"#/definitions/Item"}},"meta":{"$ref":"#/definitions/Meta"}}},"Meta":{"properties":{"page":{"type":"integer","description":"Current page number","default":1},"per_page":{"type":"integer","description":"Number of records per page","default":50},"total_pages":{"type":"integer","description":"Total number of pages","default":1},"total_count":{"type":"integer","description":"Total number of records","default":1}}},"Item":{"type":"object","properties":{"ticket_id":{"type":"integer","format":"int64","description":"Ticket/Item ID","default":12456},"ticket_uuid":{"type":"string","description":"Ticket/Item UUID","default":"94278a36eda5f2c7d3bf"},"ref_number":{"type":"string","description":"Ticket/Item reference number","default":"yhdkjdb"},"membership_name":{"type":"string","description":"Membership name","default":"Some membership"},"ticket_name":{"type":"string","description":"Ticket/Item name","default":"Some ticket type"},"first_name":{"type":"string","description":"First name of the ticket owner","default":"John"},"last_name":{"type":"string","description":"Last name of the ticket owner","default":"Doe"},"company_name":{"type":"string","description":"Company name of the ticket owner","default":"Some company","nullable":true},"email":{"type":"string","description":"Email of the ticket owner","default":"j.d@mail.com"},"phone_number":{"type":"string","description":"Phone number of the ticket owner","default":"123456789","nullable":true},"expires_at":{"type":"string","format":"date-time","description":"Ticket expiration date","default":"2024-08-31T12:15:40+00:00"},"order_id":{"type":"integer","format":"int64","description":"Order ID","default":123},"order_uuid":{"type":"string","description":"Order UUID","default":"1807cQ9aciVy0UAr_3tE4IUpfw"},"paid":{"type":"boolean","description":"Is order paid"},"refunded":{"type":"boolean","description":"Is order refunded"},"refunded_at":{"type":"string","format":"date-time","description":"Order refund date","default":null,"nullable":true}}}}}