--- openapi: 3.1.0 info: title: Howler Webhooks v1 version: 1.2.0 description: | *Last updated: 2024-07-18 11:57:00 +0200* # Introduction The **Howler Webhooks v1** describes the webhooks which can be sent to *Howler* partners for specific events. The location to wich the webbooks are sent need to be configured by an authorised user with the correct access. components: schemas: Ticket: type: object properties: id: type: integer barcode: type: string status: type: string enum: - pending - pending_payment - active - expired - closed - transferred - refunded - reseated - pending_assignment - on_resale - sold name: type: string is_complimentary: type: boolean ticket_type_id: type: integer ticket_type_name: type: string event_id: type: integer purchased_at: type: - string - 'null' format: ISO 8601 purchaser_email_address: type: - string - 'null' event_name: type: string event_location: type: - string - 'null' cost: type: object properties: currency: type: string base_price_cents: type: integer booking_fees_cents: type: integer total_paid_cents: type: integer required: - currency - base_price_cents - booking_fees_cents - total_paid_cents ticket_questions: type: - array - object items: type: object properties: id: type: integer type: type: string text: type: string answer: type: - string - array: items: type: - string - 'null' required: - id - type - text - answer cashless: type: object properties: ticket_included_credits_cents: type: integer paid_credits_cents: type: integer download_url: type: string category_id: type: - integer - 'null' category_name: type: - string - 'null' reporting_category_name: type: - string - 'null' order_reference: type: - string - 'null' payment_reference: type: - string - 'null' payment_type: type: - string - 'null' promo_code: type: - string - 'null' salesforce_distance_id: type: - string - 'null' scanned_at: type: - string - 'null' user: type: - object - 'null' properties: id: type: integer first_name: type: - string - 'null' last_name: type: - string - 'null' email: type: string cellphone_number: type: - string - 'null' unique_identifier: type: - string - 'null' id_number: type: - string - 'null' passport_number: type: - string - 'null' date_of_birth: type: - string - 'null' format: YYYY-MM-DD gender: type: - string - 'null' enum: - male - female - other - country: type: - string - 'null' country_of_origin: type: - string - 'null' city: type: - string - 'null' province: type: - string - 'null' medical_aid_provider: type: - string - 'null' medical_aid_number: type: - string - 'null' emergency_contact_name: type: - string - 'null' emergency_contact_relationship: type: - string - 'null' emergency_contact_number: type: - string - 'null' allergies: type: - string - 'null' medical_conditions: type: - string - 'null' postal_code: type: - string - 'null' street_and_number: type: - string - 'null' opt_in_email: type: - boolean - 'null' opt_in_sms: type: - boolean - 'null' language_locale: type: - string - 'null' current_sign_in_ip: type: - string - 'null' format: IP Address required: - id - first_name - last_name - email - cellphone_number - unique_identifier - id_number - passport_number - date_of_birth - gender - country - country_of_origin - city - province - medical_aid_provider - medical_aid_number - emergency_contact_name - emergency_contact_relationship - emergency_contact_number - allergies - medical_conditions - postal_code - street_and_number - opt_in_email - opt_in_sms - language_locale - current_sign_in_ip team: type: object properties: entry_type: type: string enum: - Team - Solo team_name: type: - string - 'null' start_time: type: - string - 'null' required: - entry_type - team_name - start_time action: type: string enum: - create - amend - cancel timestamp: type: string format: ISO 8601 required: - id - barcode - status - name - is_complimentary - ticket_type_id - ticket_type_name - event_id - purchased_at - purchaser_email_address - event_name - event_location - cost - ticket_questions - cashless - download_url - category_id - category_name - reporting_category_name - order_reference - payment_reference - payment_type - promo_code - salesforce_distance_id - scanned_at - user - action - timestamp Event: type: object properties: action: type: string enum: - event_create - event_amend event_id: type: integer event_name: type: string event_header_image_url: type: - string - 'null' event_url: type: string event_created_date: type: string format: ISO 8601 event_last_modified_date: type: string format: ISO 8601 event_status: type: string enum: - pending - active - cancelled event_country: type: string event_source: type: string enum: - howler - oxynade - diy_ticket - eventbrite - nutickets - quicket - registration - dice - see_tickets - ticket_io - ticket_fairy - monster_ticket - easol - our_crew event_external_identifier: type: - string - 'null' event_details: type: - string - 'null' event_sold_out: type: boolean event_venue: type: object properties: id: type: integer name: type: string address: type: string latitude: type: string longitude: type: string required: - id - name - address - latitude - longitude event_start_time: type: - string - 'null' format: ISO 8601 event_end_time: type: - string - 'null' format: ISO 8601 event_organiser_name: type: string event_organiser_id: type: integer event_cashouts_enabled_date: type: - string - 'null' format: ISO 8601 event_cashouts_disabled_date: type: - string - 'null' format: ISO 8601 event_online_streaming: type: boolean event_currency: type: string event_category: type: - string - 'null' event_protect: type: boolean event_tickets_page_accessible: type: boolean event_ticket_types: type: array items: type: object properties: ticket_type_id: type: integer ticket_type_name: type: string ticket_type_created_date: type: string format: ISO8601 ticket_type_last_modified_date: type: string format: ISO8601 ticket_type_category_id: type: - integer - 'null' ticket_type_description: type: string ticket_type_category_name: type: - string - 'null' ticket_type_quantity: type: integer ticket_type_remaining: type: integer ticket_type_sold: type: integer ticket_type_reserved: type: integer ticket_type_onsale_start_time: type: - string - 'null' format: ISO8601 ticket_type_onsale_end_time: type: - string - 'null' format: ISO8601 ticket_type_fee_cents: type: integer ticket_type_fee_currency: type: string ticket_type_cost_cents: type: integer ticket_type_cost_currency: type: string ticket_type_commission_cents: type: integer ticket_type_commission_currency: type: string ticket_type_rep_manager_commission_cents: type: integer ticket_type_rep_manager_commission_currency: type: string required: - ticket_type_id - ticket_type_name - ticket_type_created_date - ticket_type_last_modified_date - ticket_type_category_id - ticket_type_description - ticket_type_category_name - ticket_type_quantity - ticket_type_remaining - ticket_type_sold - ticket_type_reserved - ticket_type_onsale_start_time - ticket_type_onsale_end_time - ticket_type_fee_cents - ticket_type_fee_currency - ticket_type_cost_cents - ticket_type_cost_currency - ticket_type_commission_cents - ticket_type_commission_currency - ticket_type_rep_manager_commission_cents - ticket_type_rep_manager_commission_currency event_fees: type: object properties: ticket: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max credit_card: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max eft: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max visa_checkout: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max pay_at: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max refund: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max chargeback: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max zapper: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max snap_scan: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max lay_up: type: object properties: percent: type: number required: - percent eighteen_app: type: object properties: percent: type: number required: - percent donation: type: object properties: percent: type: number required: - percent complimentary: type: object properties: fixed: type: number required: - fixed promo_email: type: object properties: fixed: type: number required: - fixed promo_sms: type: object properties: fixed: type: number required: - fixed notes: type: object properties: value: type: - number - 'null' required: - value ticket_resale_buyer: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max ticket_resale_seller: type: object properties: percent: type: number min: type: number max: type: - number - 'null' required: - percent - min - max required: - action - event_id - event_name - event_header_image_url - event_url - event_created_date - event_last_modified_date - event_status - event_country - event_source - event_external_identifier - event_details - event_sold_out - event_venue - event_start_time - event_end_time - event_organiser_name - event_organiser_id - event_cashouts_enabled_date - event_cashouts_disabled_date - event_online_streaming - event_currency - event_category - event_protect - event_tickets_page_accessible - event_ticket_types - event_fees Payment: type: object properties: payment_id: type: integer payment_type: type: string payment_merchant_reference: type: string payment_amount_cents: type: integer payment_amount_currency: type: string payment_status: type: string enum: - pending - successful - failed - expired - processing - rejected - retried payment_direction: type: string enum: - incoming - outgoing payment_created_date: type: string format: RFC-3339 payment_last_modified_date: type: string format: RFC-3339 paying_user_id: type: integer payment_gateway_data: type: - object - 'null' payment_gateway_batch_reference: type: - string - 'null' payment_gateway_batch_date: type: - string - 'null' format: ISO 8601 event_id: type: integer organiser_id: type: integer order_data: type: object properties: order_id: type: integer order_type: type: string order_user_id: type: - integer - 'null' order_status: type: string enum: - pending - paid - expired - pending_payment - created - processing order_reference: type: string order_created_date: type: - string - 'null' format: ISO 8601 order_last_modified_date: type: - string - 'null' format: ISO 8601 order_items: type: array items: type: object properties: order_item_id: type: integer order_item_type: type: string order_item_fee_cents: type: integer order_item_fee_currency: type: string order_item_amount_cents: type: integer order_item_amount_currency: type: string order_item_orderable_type: type: string order_item_created_date: type: string format: ISO 8601 order_item_last_modified_date: type: string format: ISO 8601 order_item_extra_details: type: object billable_order_item_total_cost_cents: type: integer billable_order_item_total_cost_currency: type: string billable_order_item_cost_per_item_cents: type: integer billable_order_item_cost_per_item_currency: type: string billable_order_item_quantity: type: integer order_item_orderable_data: type: object properties: ticket_id: type: integer ticket_barcode: type: - string - 'null' ticket_type_id: type: integer ticket_type_name: type: string ticket_status: type: string enum: - pending - pending_payment - active - expired - closed - transferred - refunded - reseated - pending_assignment - on_resale - sold ticket_download_link: type: - string - 'null' ticket_created_at: type: string fromat: ISO 8601 ticket_last_modified_date: type: string format: ISO 8601 ticket_event_online_streaming: type: boolean campaign_name: type: string cashless_transaction_id: type: integer cashless_transaction_type: type: string cashless_transaction_amount_cents: type: integer cashless_transaction_amount_currency: type: string cashless_transaction_fee_cents: type: integer cashless_transaction_fee_currency: type: string cashless_transaction_payment_status: type: string enum: - pending - paid - failed - expired - refunded - processing - processed cashless_transaction_external_order_identifier: type: - string - 'null' cashless_transaction_cashless_tag_pairing_id: type: - integer - 'null' cashless_transaction_ticket_id: type: - integer - 'null' cashless_transaction_created_date: type: string format: ISO 8601 cashless_transaction_last_modified_date: type: string format: ISO 8601 donation_id: type: integer donation_created_at: type: string format: ISO 8601 donation_last_modified_date: type: string format: ISO 8601 vendor_settlement_id: type: integer vendor_settlement_station_id: type: integer vendor_settlement_amount_cents: type: integer vendor_settlement_amount_currency: type: string vendor_settlement_created_date: type: string format: ISO 8601 vendor_settlement_last_modified_date: type: string format: ISO 8601 required: [] order_item_event_online_streaming: type: boolean required: - order_item_id - order_item_type - order_item_fee_cents - order_item_fee_currency - order_item_amount_cents - order_item_amount_currency - order_item_orderable_type - order_item_created_date - order_item_last_modified_date - order_item_extra_details order_late_cashout: type: boolean required: - order_id - order_type - order_user_id - order_status - order_reference - order_created_date - order_last_modified_date - order_items refunded_payment_id: type: integer refunded_payment_reference: type: string payment_gateway_credential: type: - string - 'null' retry_of_payment_id: type: integer retry_of_payment_reference: type: string required: - payment_id - payment_type - payment_merchant_reference - payment_amount_cents - payment_amount_currency - payment_status - payment_direction - payment_created_date - payment_last_modified_date - paying_user_id - payment_gateway_data - payment_gateway_batch_reference - payment_gateway_batch_date - event_id - organiser_id - order_data tags: - name: Webhooks webhooks: Ticket Webhook: post: summary: Sent when a ticket is created, amended or cancelled. tags: - Webhooks description: "Send ticket information to an external server.\n\nThis webhook is triggered when a ticket is \n" security: [] responses: '200': description: successful content: application/json: schema: "$ref": "#/components/schemas/Ticket" Event Webhook: post: summary: Sent when an event is created or amended. tags: - Webhooks description: | Send event information to an external server. This webhook is triggered when an event is created or when an event is updated. Currently there is a known issue where the webhook is not triggered when a new ticket type is created or updated. security: [] responses: '200': description: successful content: application/json: schema: "$ref": "#/components/schemas/Event" Payment Webhook: post: summary: Sent when a payment's status changes to successful. tags: - Webhooks description: | Send payment information to an external server. This webhook is trigger when a payment's status is updated to successful. security: [] responses: '200': description: successful content: application/json: schema: "$ref": "#/components/schemas/Payment"