{
    "openapi": "3.0.3",
    "info": {
        "title": "Get Tickets",
        "description": "Get tickets for a ticket event.",
        "version": "1.0.0",
        "contact": {
            "name": "RunSignup API Support",
            "url": "https://runsignup.com/API",
            "email": "info@runsignup.com"
        }
    },
    "servers": [
        {
            "url": "https://api.runsignup.com/rest",
            "description": "Production API Server"
        }
    ],
    "tags": [
        {
            "name": "Ticket Events",
            "description": "APIs related to Ticket Events"
        }
    ],
    "components": {
        "schemas": {
            "Error": {
                "type": "object",
                "properties": {
                    "error": {
                        "type": "string",
                        "description": "Error message"
                    },
                    "details": {
                        "type": "object",
                        "description": "Additional error details",
                        "additionalProperties": true
                    }
                },
                "required": [
                    "error"
                ]
            },
            "BadRequestError": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Error"
                    },
                    {
                        "description": "Error indicating invalid request parameters or structure"
                    }
                ]
            },
            "UnauthorizedError": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Error"
                    },
                    {
                        "description": "Error indicating authentication failure"
                    }
                ]
            },
            "ForbiddenError": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Error"
                    },
                    {
                        "description": "Error indicating the authenticated user lacks required permissions"
                    }
                ]
            },
            "NotFoundError": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Error"
                    },
                    {
                        "description": "Error indicating the requested resource does not exist"
                    }
                ]
            },
            "ServerError": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Error"
                    },
                    {
                        "description": "Error indicating an unexpected server-side issue"
                    }
                ]
            }
        },
        "securitySchemes": {
            "apiKey": {
                "type": "apiKey",
                "in": "query",
                "name": "api_key",
                "description": "RunSignup API Key"
            },
            "apiSecret": {
                "type": "apiKey",
                "in": "query",
                "name": "api_secret",
                "description": "RunSignup API Secret"
            }
        }
    },
    "paths": {
        "/v2/tickets/get-tickets.json": {
            "get": {
                "tags": [
                    "Ticket Events"
                ],
                "summary": "Get Tickets",
                "description": "Get tickets for a ticket event.",
                "operationId": "v2_tickets_get_tickets_json",
                "parameters": [
                    {
                        "name": "ticket_event_id",
                        "in": "query",
                        "description": "Ticket event ID.",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "rsu_api_key",
                        "in": "query",
                        "description": "API key.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "X-RSU-API-SECRET",
                        "in": "header",
                        "description": "API secret.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "checkin_api_key",
                        "in": "query",
                        "description": "Checkin API key.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "X-CHECKIN-API-SECRET",
                        "in": "header",
                        "description": "Checkin API secret.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "description": "Sort field. Accepted sort fields: \"ticket_id\".",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "ticket_id"
                        }
                    },
                    {
                        "name": "sort_direction",
                        "in": "query",
                        "description": "Sort by ascending (\"ASC\") or descending (\"DESC\") order.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "ASC"
                        }
                    },
                    {
                        "name": "after_ticket_id",
                        "in": "query",
                        "description": "Get tickets after the given ticket ID.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "before_ticket_id",
                        "in": "query",
                        "description": "Get tickets before the given ticket ID.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "num",
                        "in": "query",
                        "description": "Number of results per page (max 1,250).",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "default": "100"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Number of pages.",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "default": "1"
                        }
                    },
                    {
                        "name": "modified_since_timestamp",
                        "in": "query",
                        "description": "Get tickets modified since a given time.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "final_time_slot_min_timestamp",
                        "in": "query",
                        "description": "Get tickets with a final time slot start timestamp of no less than a given time. (Applicable to timed entry events only)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "final_time_slot_max_timestamp",
                        "in": "query",
                        "description": "Get tickets with a final time slot start timestamp of no greater than a given time. (Applicable to timed entry events only)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "supports_timed_entry_events",
                        "in": "query",
                        "description": "Are timed entry events supported?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_question_responses",
                        "in": "query",
                        "description": "Should question responses be included?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_deleted_question_responses",
                        "in": "query",
                        "description": "Should question responses for deleted questions and deleted question responses be included if question responses are included?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_non_active_tickets",
                        "in": "query",
                        "description": "Should non-active tickets be included?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_raffle_tickets",
                        "in": "query",
                        "description": "Include raffle tickets?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_ticket_checkin_counts",
                        "in": "query",
                        "description": "Include ticket checkin counts?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_ticket_purchase_waitwhile_status",
                        "in": "query",
                        "description": "Include ticket purchase Waitwhile status?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_ticket_transfer_info",
                        "in": "query",
                        "description": "Include ticket transfer info?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "include_waiver_info",
                        "in": "query",
                        "description": "Include waiver info?",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "enum": [
                                "T",
                                "F"
                            ],
                            "default": "F"
                        }
                    },
                    {
                        "name": "ticket_first_name",
                        "in": "query",
                        "description": "Search tickets by ticket first name.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_last_name",
                        "in": "query",
                        "description": "Search tickets by ticket last name.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_email",
                        "in": "query",
                        "description": "Search tickets by ticket email.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "purchaser_first_name",
                        "in": "query",
                        "description": "Search tickets by purchaser first name.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "purchaser_last_name",
                        "in": "query",
                        "description": "Search tickets by purchaser last name.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "purchaser_email",
                        "in": "query",
                        "description": "Search tickets by purchaser email.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_confirmation_code",
                        "in": "query",
                        "description": "Search tickets by ticket confirmation code.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "purchase_confirmation_code",
                        "in": "query",
                        "description": "Search tickets by purchase confirmation code.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ticket_number",
                        "in": "query",
                        "description": "Search tickets by ticket number.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "security": [
                    {
                        "apiKey": [],
                        "apiSecret": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestError"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedError"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ForbiddenError"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/NotFoundError"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ServerError"
                                }
                            }
                        }
                    }
                },
                "x-permissions": []
            }
        }
    }
}