

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "Matchmaker",
    "description": "Unity Matchmaker is part of Unity's growing suite of multiplayer services that are designed to help you create and operate multiplayer games no matter what engine you're using.",
    "version": "v2.0",
    "termsOfService": "https://unity3d.com/legal/terms-of-service"
  },
  "servers": [
    {
      "url": "https://matchmaker.services.api.unity.com",
      "description": "Production"
    }
  ],
  "paths": {
    "/v2/tickets": {
      "post": {
        "summary": "Create a matchmaking ticket",
        "description": "Start matchmaking by creating a matchmaking ticket. Returns the ticket ID of the ticket created.",
        "parameters": [
          {
            "in": "header",
            "name": "impersonated-user-id",
            "description": "When called with a service account, used to specify the player-id to create the ticket on behalf of.",
            "schema": {
              "type": "string"
            },
            "required": false
          }
        ],
        "operationId": "createTicket",
        "tags": [
          "Tickets"
        ],
        "security": [
          {
            "ClientAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTicketRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTicketResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      },
      "delete": {
        "summary": "Delete a matchmaking ticket",
        "description": "End matchmaking by deleting a matchmaking ticket using its ticket ID. This is called when the user wants to cancel matchmaking.",
        "operationId": "deleteTicket",
        "tags": [
          "Tickets"
        ],
        "security": [
          {
            "ClientAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/idQuery"
          },
          {
            "in": "header",
            "name": "impersonated-user-id",
            "description": "When called with a service account, used to specify the player-id to create the ticket on behalf of.",
            "schema": {
              "type": "string"
            },
            "required": false
          }
        ],
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      }
    },
    "/v2/tickets/status": {
      "get": {
        "summary": "Gets the status of a ticket match assignment in the matchmaker",
        "description": "Gets the status of a ticket match assignment in the Matchmaker.<br>Poll this resource until the match assignment is fulfilled. Rate of polling should not be more than once every second.",
        "operationId": "getTicketStatus",
        "tags": [
          "Tickets"
        ],
        "security": [
          {
            "ClientAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/idQuery"
          },
          {
            "in": "header",
            "name": "impersonated-user-id",
            "description": "When called with a service account, used to specify the player-id to create the ticket on behalf of.",
            "schema": {
              "type": "string"
            },
            "required": false
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TicketStatusResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      }
    },
    "/v2/backfill/{id}/approvals": {
      "post": {
        "summary": "Approve a backfill ticket",
        "description": "Returns the BackfillTicket. Approving a backfill ticket allows all proposed tickets associated with that backfill ticket to be assigned. To get players using backfill, call this periodically.<br>It is recommended that this be called no faster than once a second while backfill is in progress.<br>This request should only be performed by the dedicated game server.",
        "operationId": "approveBackfillTicket",
        "tags": [
          "Backfill"
        ],
        "security": [
          {
            "GameServerHostingAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/idPath"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BackfillTicket"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      }
    },
    "/v2/backfill": {
      "post": {
        "summary": "Create a backfill ticket",
        "description": "A request allowing the game server to receive new players from the matchmaker.<br>The request should contain the teams, theirs players and the players information so that the matchmaker can add players to that match.<br>The request should only be performed by the dedicated game server.",
        "operationId": "createBackfillTicket",
        "tags": [
          "Backfill"
        ],
        "security": [
          {
            "GameServerHostingAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBackfillTicketRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBackfillTicketResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      }
    },
    "/v2/backfill/{id}": {
      "delete": {
        "summary": "Delete a backfill ticket",
        "description": "When a backfill ticket is deleted, the matchmaker rejects all proposed tickets associated with that backfill ticket.<br>Rejected tickets return to the tickets pool and can be matched again.<br>This should be called when backfill ends and the request is only made by the dedicated game server.",
        "operationId": "deleteBackfillTicket",
        "tags": [
          "Backfill"
        ],
        "security": [
          {
            "GameServerHostingAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/idPath"
          }
        ],
        "responses": {
          "204": {
            "description": "Success"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      },
      "put": {
        "summary": "Update a backfill ticket",
        "description": "This should be called when the server state changes in order to reflect the current server state, such as when people leave the server or when people join the server without the involvement of the matchmaker.<br>Updating a backfill ticket will reject all unapproved tickets associated with that backfill ticket. Rejected tickets will return to the pool of tickets queryable by the matchmaker if they were not approved.<br>The request should only be performed by the dedicated game server.",
        "operationId": "updateBackfillTicket",
        "tags": [
          "Backfill"
        ],
        "security": [
          {
            "GameServerHostingAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/idPath"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BackfillTicket"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          }
        }
      }
    },
    "/v2/projects/{projectId}/matches/{matchId}/matchmaking-results": {
      "get": {
        "summary": "Returns the StoredMatchmakingResults",
        "description": "Returns the results of the matchmaking process (e.g. team compositions, queues/pool info, etc).",
        "operationId": "getMatchmakingResults",
        "tags": [
          "Matches"
        ],
        "security": [
          {
            "ClientAuth": []
          },
          {
            "ServiceAccount": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/matchId"
          },
          {
            "$ref": "#/components/parameters/projectId"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoredMatchmakingResults"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "idQuery": {
        "name": "id",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "Ticket ID or Backfill Ticket ID. The ID is obtained from the response of the Create operation."
      },
      "idPath": {
        "name": "id",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "Ticket ID or Backfill Ticket ID."
      },
      "matchId": {
        "name": "matchId",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "ID of Match, as returned from the tickets API"
      },
      "projectId": {
        "name": "projectId",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string"
        },
        "description": "Unity project ID"
      }
    },
    "responses": {
      "400": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ProblemDetails"
            }
          }
        }
      },
      "404": {
        "description": "Not Found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ProblemDetails"
            }
          }
        }
      },
      "429": {
        "description": "Too Many Requests",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ProblemDetails"
            }
          }
        }
      },
      "500": {
        "description": "Internal Server Error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ProblemDetails"
            }
          }
        }
      }
    },
    "schemas": {
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "errors": {
            "type": "object",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "internal"
      },
      "Attributes": {
        "type": "object",
        "additionalProperties": {
          "type": "object",
          "format": "object"
        },
        "nullable": true,
        "description": "An object that holds a dictionary of attributes (number or string), indexed by the attribute name. The attributes are compared against the corresponding filters defined in the matchmaking config and used to segment the ticket population into pools. The default pool is used if a pool isn't provided."
      },
      "ConnectionDetails": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/IpPortConnectionDetails"
          },
          {
            "$ref": "#/components/schemas/CustomConnectionDetails"
          }
        ],
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "IpPort": "#/components/schemas/IpPortConnectionDetails",
            "Custom": "#/components/schemas/CustomConnectionDetails"
          }
        },
        "x-access-modifier": "public"
      },
      "IpPortConnectionDetails": {
        "title": "IpPortConnectionDetails",
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "type": "string",
            "nullable": false
          },
          "ip": {
            "type": "string",
            "nullable": false
          },
          "port": {
            "type": "integer",
            "format": "int32",
            "nullable": false
          },
          "customData": {
            "type": "object",
            "nullable": true,
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "type": "IpPort",
          "ip": "27.49.78.99",
          "port": 9000
        }
      },
      "CustomConnectionDetails": {
        "title": "CustomConnectionDetails",
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "type": "string",
            "nullable": false
          },
          "customData": {
            "type": "object",
            "nullable": true,
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "type": "Custom",
          "customData": {
            "connectionId": "936"
          }
        }
      },
      "CreateTicketRequest": {
        "type": "object",
        "properties": {
          "queueName": {
            "type": "string",
            "nullable": true,
            "description": "A logical grouping of tickets, where tickets get considered for matchmaking together. Has to match one of the queue names in the matchmaking config. If not provided, the default queue will be used."
          },
          "attributes": {
            "$ref": "#/components/schemas/Attributes"
          },
          "players": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Player"
            },
            "description": "A list of players."
          }
        },
        "required": [
          "players"
        ],
        "additionalProperties": false,
        "x-access-modifier": "internal",
        "example": {
          "queueName": "4vs4",
          "attributes": {
            "region": "NA",
            "platform": "PC"
          },
          "players": [
            {
              "id": "6cc5ac8d-dfab-4b50-9ede-c1d026d8dc81",
              "customData": {
                "Skill": 123,
                "Hero": "tank"
              },
              "qosResults": [
                {
                  "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                  "packetLoss": 0.8,
                  "latency": 50
                },
                {
                  "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                  "packetLoss": 0.5,
                  "latency": 20
                }
              ]
            }
          ]
        }
      },
      "CreateTicketResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "id": "ec362579-7e46-4040-b79d-8ee856137e36"
        }
      },
      "TicketStatusResponse": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/MultiplayAssignment"
          },
          {
            "$ref": "#/components/schemas/MatchIdAssignment"
          },
          {
            "$ref": "#/components/schemas/IpPortAssignment"
          },
          {
            "$ref": "#/components/schemas/CustomAssignment"
          },
          {
            "$ref": "#/components/schemas/NoneAssignment"
          }
        ],
        "discriminator": {
          "propertyName": "assignmentType",
          "mapping": {
            "MultiplayAssignment": "#/components/schemas/MultiplayAssignment",
            "MatchIdAssignment": "#/components/schemas/MatchIdAssignment",
            "IpPortAssignment": "#/components/schemas/IpPortAssignment",
            "CustomAssignment": "#/components/schemas/CustomAssignment",
            "None": "#/components/schemas/NoneAssignment"
          }
        },
        "x-access-modifier": "public"
      },
      "MultiplayAssignment": {
        "title": "MultiplayAssignment",
        "type": "object",
        "required": [
          "assignmentType"
        ],
        "properties": {
          "assignmentType": {
            "type": "string",
            "nullable": false
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "enum": [
              "Timeout",
              "Failed",
              "InProgress",
              "Found"
            ],
            "nullable": false,
            "description": "The status of the assignment is one of Timeout, Failed, InProgress, Found"
          },
          "ip": {
            "type": "string",
            "nullable": true
          },
          "port": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "assignmentType": "MultiplayAssignment",
          "message": "",
          "status": "Found",
          "ip": "27.49.78.99",
          "port": 9000,
          "matchId": "257c4290-df73-40dd-b08f-b74f34bade21"
        }
      },
      "MatchIdAssignment": {
        "title": "MatchIdAssignment",
        "type": "object",
        "required": [
          "assignmentType"
        ],
        "properties": {
          "assignmentType": {
            "type": "string",
            "nullable": false
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "enum": [
              "Timeout",
              "Failed",
              "InProgress",
              "Found"
            ],
            "nullable": false,
            "description": "The status of the assignment is one of Timeout, Failed, InProgress, Found"
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "assignmentType": "MatchIdAssignment",
          "message": "",
          "status": "Found",
          "matchId": "257c4290-df73-40dd-b08f-b74f34bade21"
        }
      },
      "IpPortAssignment": {
        "title": "IpPortAssignment",
        "type": "object",
        "required": [
          "assignmentType"
        ],
        "properties": {
          "assignmentType": {
            "type": "string",
            "nullable": false
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "enum": [
              "Timeout",
              "Failed",
              "InProgress",
              "Found"
            ],
            "nullable": false,
            "description": "The status of the assignment is one of Timeout, Failed, InProgress, Found"
          },
          "ip": {
            "type": "string",
            "nullable": true,
            "description": "IP address of the allocated server"
          },
          "port": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "description": "Port of the allocated server"
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          },
          "customData": {
            "type": "object",
            "additionalProperties": true,
            "nullable": true,
            "description": "Custom data for additional information (auth tokens, map hints, metadata, etc.)"
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "assignmentType": "IpPortAssignment",
          "message": "",
          "status": "Found",
          "ip": "203.0.113.42",
          "port": 7777,
          "matchId": "b0ac1fe9-1234-5678-90ab-cdef12345678",
          "customData": {
            "authToken": "abc123",
            "mapId": "arena_01"
          }
        }
      },
      "CustomAssignment": {
        "title": "CustomAssignment",
        "type": "object",
        "required": [
          "assignmentType"
        ],
        "properties": {
          "assignmentType": {
            "type": "string",
            "nullable": false
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "enum": [
              "Timeout",
              "Failed",
              "InProgress",
              "Found"
            ],
            "nullable": false,
            "description": "The status of the assignment is one of Timeout, Failed, InProgress, Found"
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          },
          "customData": {
            "type": "object",
            "additionalProperties": true,
            "nullable": true,
            "description": "Custom data containing all connection information. This is the primary connection mechanism for custom assignments."
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "assignmentType": "CustomAssignment",
          "message": "",
          "status": "Found",
          "matchId": "c1d2e3f4-5678-90ab-cdef-123456789abc",
          "customData": {
            "lobbyToken": "xyz",
            "peerList": [
              "peer1",
              "peer2"
            ],
            "stunServer": "stun.example.com"
          }
        }
      },
      "NoneAssignment": {
        "title": "NoneAssignment",
        "type": "object",
        "description": "Assignment type used when the final type is not yet determined (e.g., CloudCode hosting before allocation completes) or for allocation errors. Contains only status information - no connection data.",
        "required": [
          "assignmentType"
        ],
        "properties": {
          "assignmentType": {
            "type": "string",
            "nullable": false
          },
          "message": {
            "type": "string",
            "nullable": true,
            "description": "Error details when status is 'Failed'. Common values include 'Allocation error: <details>' or 'AllocationError'."
          },
          "status": {
            "type": "string",
            "enum": [
              "Timeout",
              "Failed",
              "InProgress",
              "Found"
            ],
            "nullable": false,
            "description": "The status of the assignment is one of Timeout, Failed, InProgress, Found"
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public",
        "example": {
          "assignmentType": "None",
          "message": "",
          "status": "InProgress"
        }
      },
      "QosResult": {
        "type": "object",
        "properties": {
          "regionId": {
            "type": "string",
            "description": "Contains the ID of the QoS region this result belongs to."
          },
          "packetLoss": {
            "type": "number",
            "format": "double",
            "nullable": true,
            "description": "The Packet Loss for this QoS region. This is a ratio, value should be between 0.0 (no loss) and 1.0 (100% packet loss)."
          },
          "latency": {
            "type": "number",
            "format": "double",
            "nullable": true,
            "description": "The Latency for this QoS region."
          },
          "annotations": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "description": "A dictionary of server annotations."
          }
        },
        "required": [
          "regionId",
          "packetLoss",
          "latency"
        ],
        "additionalProperties": false,
        "description": "Quality of Service (QoS) result for a single region.",
        "x-access-modifier": "public"
      },
      "Player": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID of the player. Usually, the ID received as a result of authenticating a player."
          },
          "customData": {
            "type": "object",
            "description": "A custom data object. Contains a dictionary of custom data to be used by the rules defined in a Match Definition."
          },
          "qosResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QosResult"
            },
            "nullable": true,
            "description": "A list of QosResult."
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false,
        "description": "An object representing a single player.",
        "x-access-modifier": "public"
      },
      "BackfillTicket": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Backfill ticket ID."
          },
          "connection": {
            "type": "string",
            "nullable": true,
            "description": "The IP address and port of the server that creates the backfill. The IP address format is ip:port."
          },
          "connectionDetails": {
            "$ref": "#/components/schemas/ConnectionDetails"
          },
          "attributes": {
            "$ref": "#/components/schemas/Attributes"
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "format": "byte"
            },
            "description": "An object that will contain the data representing a Backfill Ticket. The information about the backfill ticket properties is stored in the `Data` property of that object. [Backfill Ticket Properties](#tag/backfill_ticket_properties_model) is serialized in base64 (with padding)."
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "internal",
        "example": {
          "id": "9465e2af-91b9-44f3-b8e9-e7de7d562f97",
          "created": 1648749745107,
          "attributes": {},
          "properties": {
            "Data": "eyJtYXRjaFByb3BlcnRpZXMiOnsidGVhbXMiOlt7InRlYW1OYW1lIjoiUmVkIFRlYW0iLCJ0ZWFtSWQiOiI3MmNlYjU4Zi04NTBkLTQ0YTAtYmYzZC04ZDIzMDQ4YTE2ZmMiLCJwbGF5ZXJJZHMiOlsiMmQyYjRiOTktZGJlNy00ODJkLTljZTMtYTk4NTZkMDQ3MGYwIiwiNjc0ZGZiOTktZTMyNS00YWE2LWI5ZjgtZDU2ZDczNDkxM2MxIl19XSwicGxheWVycyI6W3siaWQiOiIyZDJiNGI5OS1kYmU3LTQ4MmQtOWNlMy1hOTg1NmQwNDcwZjAiLCJjdXN0b21EYXRhIjp7fSwicW9zUmVzdWx0cyI6W3sicmVnaW9uSWQiOiI3NTcyMTc5NC1lOWZkLTRkOGEtOTg3OS1hYTg1M2VkMTg4ODUiLCJwYWNrZXRMb3NzIjowLjAxLCJsYXRlbmN5Ijo1MH0seyJyZWdpb25JZCI6ImJkOTg0ZDZmLTM3YTYtNDczZC1hNzY2LTg5NDRhZTQzOTUyNiIsInBhY2tldExvc3MiOjAuMDIsImxhdGVuY3kiOjIwfV19LHsiaWQiOiI2NzRkZmI5OS1lMzI1LTRhYTYtYjlmOC1kNTZkNzM0OTEzYzEiLCJjdXN0b21EYXRhIjp7fSwicW9zUmVzdWx0cyI6W3sicmVnaW9uSWQiOiI3NTcyMTc5NC1lOWZkLTRkOGEtOTg3OS1hYTg1M2VkMTg4ODUiLCJwYWNrZXRMb3NzIjowLCJsYXRlbmN5IjoxNTB9LHsicmVnaW9uSWQiOiJiZDk4NGQ2Zi0zN2E2LTQ3M2QtYTc2Ni04OTQ0YWU0Mzk1MjYiLCJwYWNrZXRMb3NzIjowLjA1LCJsYXRlbmN5IjoxMTB9XX1dLCJyZWdpb24iOiJiZDk4NGQ2Zi0zN2E2LTQ3M2QtYTc2Ni04OTQ0YWU0Mzk1MjYiLCJiYWNrZmlsbFRpY2tldElkIjoiOTQ2NWUyYWYtOTFiOS00NGYzLWI4ZTktZTdkZTdkNTYyZjk3In19"
          },
          "connection": "127.200.20.29:9000"
        }
      },
      "CreateBackfillTicketRequest": {
        "type": "object",
        "properties": {
          "queueName": {
            "type": "string",
            "nullable": true,
            "description": "Tickets are logically grouped together for matchmaking. The tickets must match one of the queue names in the matchmaking config. If not, they will be placed in the default queue."
          },
          "connection": {
            "type": "string",
            "nullable": true,
            "description": "The IP address and port of the server creating the backfill (using the format ip:port). This property is used to assign the server to the matching tickets."
          },
          "connectionDetails": {
            "$ref": "#/components/schemas/ConnectionDetails"
          },
          "attributes": {
            "$ref": "#/components/schemas/Attributes",
            "nullable": true
          },
          "poolId": {
            "type": "string",
            "nullable": true,
            "description": "The ID of the pool to create the backfill ticket in. Cannot be used if the `attributes` field is present. The MatchmakingResults in the allocation payload contains the pool ID of the match it was created in. The allocation payload is retrieved by the game server from the payload proxy as described in the [Game Server Hosting Documentation](https://docs.unity.com/ugs/en-us/manual/game-server-hosting/manual/concepts/allocations-payload#Retrieving_the_payload)."
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "format": "byte"
            },
            "description": "An object that will contain the data representing a Backfill Ticket. The information about the backfill ticket properties is stored in the `Data` property of that object. [Backfill Ticket Properties](#tag/backfill_ticket_properties_model) is serialized in base64 (with padding)."
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "The ID of the match that this backfill ticket is targeting. The match ID is contained in the MatchmakingResults in the allocation payload. The allocation payload is retrieved by the game server from the payload proxy as described in the [Game Server Hosting Documentation](https://docs.unity.com/ugs/en-us/manual/game-server-hosting/manual/concepts/allocations-payload#Retrieving_the_payload)."
          }
        },
        "required": [
          "properties"
        ],
        "additionalProperties": false,
        "x-access-modifier": "internal",
        "example": {
          "queueName": "4vs4",
          "attributes": {
            "region": "NA",
            "platform": "PC"
          },
          "connection": "27.49.78.99:9000",
          "properties": {
            "Data": "eyJtYXRjaFByb3BlcnRpZXMiOnsidGVhbXMiOlt7InRlYW1OYW1lIjoiUmVkIFRlYW0iLCJ0ZWFtSWQiOiI3MmNlYjU4Zi04NTBkLTQ0YTAtYmYzZC04ZDIzMDQ4YTE2ZmMiLCJwbGF5ZXJJZHMiOlsiMmQyYjRiOTktZGJlNy00ODJkLTljZTMtYTk4NTZkMDQ3MGYwIiwiNjc0ZGZiOTktZTMyNS00YWE2LWI5ZjgtZDU2ZDczNDkxM2MxIl19XSwicGxheWVycyI6W3siaWQiOiIyZDJiNGI5OS1kYmU3LTQ4MmQtOWNlMy1hOTg1NmQwNDcwZjAiLCJjdXN0b21EYXRhIjp7fSwicW9zUmVzdWx0cyI6W3sicmVnaW9uSWQiOiI3NTcyMTc5NC1lOWZkLTRkOGEtOTg3OS1hYTg1M2VkMTg4ODUiLCJwYWNrZXRMb3NzIjowLjAxLCJsYXRlbmN5Ijo1MH0seyJyZWdpb25JZCI6ImJkOTg0ZDZmLTM3YTYtNDczZC1hNzY2LTg5NDRhZTQzOTUyNiIsInBhY2tldExvc3MiOjAuMDIsImxhdGVuY3kiOjIwfV19LHsiaWQiOiI2NzRkZmI5OS1lMzI1LTRhYTYtYjlmOC1kNTZkNzM0OTEzYzEiLCJjdXN0b21EYXRhIjp7fSwicW9zUmVzdWx0cyI6W3sicmVnaW9uSWQiOiI3NTcyMTc5NC1lOWZkLTRkOGEtOTg3OS1hYTg1M2VkMTg4ODUiLCJwYWNrZXRMb3NzIjowLCJsYXRlbmN5IjoxNTB9LHsicmVnaW9uSWQiOiJiZDk4NGQ2Zi0zN2E2LTQ3M2QtYTc2Ni04OTQ0YWU0Mzk1MjYiLCJwYWNrZXRMb3NzIjowLjA1LCJsYXRlbmN5IjoxMTB9XX1dLCJyZWdpb24iOiJiZDk4NGQ2Zi0zN2E2LTQ3M2QtYTc2Ni04OTQ0YWU0Mzk1MjYiLCJiYWNrZmlsbFRpY2tldElkIjoiOTQ2NWUyYWYtOTFiOS00NGYzLWI4ZTktZTdkZTdkNTYyZjk3In19"
          }
        }
      },
      "BackfillTicketProperties": {
        "type": "object",
        "description": "This object has to be encoded in base64.",
        "properties": {
          "matchProperties": {
            "$ref": "#/components/schemas/MatchProperties",
            "description": "Represent the match properties",
            "nullable": false
          }
        },
        "x-access-modifier": "public"
      },
      "MatchProperties": {
        "type": "object",
        "properties": {
          "teams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Team"
            },
            "description": "The list of teams in the match.",
            "nullable": false
          },
          "players": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Player"
            },
            "description": "The list of players in the match.",
            "nullable": false
          },
          "region": {
            "type": "string",
            "description": "The region where the server is allocated.",
            "nullable": false
          },
          "backfillTicketId": {
            "type": "string",
            "description": "The unique ID of the backfill ticket.",
            "nullable": true
          }
        },
        "x-access-modifier": "public",
        "example": {
          "teams": [
            {
              "teamName": "Red Team",
              "teamId": "14f18a3e-921d-4165-90b6-ada353e186ca",
              "playerIDs": [
                "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1"
              ]
            },
            {
              "teamName": "Blue Team",
              "teamId": "5aa8ae3b-d5b6-463a-9795-9bc10210dc86",
              "playerIDs": [
                "a67cf7fe-975b-4fd3-b694-e8b8452cc702"
              ]
            }
          ],
          "players": [
            {
              "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
              "customData": {
                "Skill": 123,
                "Hero": "tank"
              },
              "qosResults": [
                {
                  "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                  "packetLoss": 0.8,
                  "latency": 50
                },
                {
                  "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                  "packetLoss": 0.5,
                  "latency": 20
                }
              ]
            },
            {
              "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
              "customData": {
                "Skill": 250,
                "Hero": "healer"
              },
              "qosResults": [
                {
                  "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                  "packetLoss": 0.7,
                  "latency": 25
                },
                {
                  "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                  "packetLoss": 0.8,
                  "latency": 20
                }
              ]
            }
          ],
          "region": "05083faf-3795-47b8-a0dc-c626089c5ac9",
          "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f"
        }
      },
      "StoredMatchProperties": {
        "type": "object",
        "properties": {
          "teams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Team"
            },
            "description": "The list of teams in the match.",
            "nullable": false
          },
          "players": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Player"
            },
            "description": "The list of players in the match.",
            "nullable": false
          },
          "region": {
            "type": "string",
            "description": "The region where the server is allocated.",
            "nullable": false
          },
          "backfillTicketId": {
            "type": "string",
            "description": "The unique ID of the backfill ticket.",
            "nullable": true
          },
          "maxPlayers": {
            "type": "integer",
            "description": "The maximum number of players in the match, calculated from user-configured match logic.",
            "nullable": false
          }
        },
        "x-access-modifier": "public",
        "example": {
          "teams": [
            {
              "teamName": "Red Team",
              "teamId": "14f18a3e-921d-4165-90b6-ada353e186ca",
              "playerIDs": [
                "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1"
              ]
            },
            {
              "teamName": "Blue Team",
              "teamId": "5aa8ae3b-d5b6-463a-9795-9bc10210dc86",
              "playerIDs": [
                "a67cf7fe-975b-4fd3-b694-e8b8452cc702"
              ]
            }
          ],
          "players": [
            {
              "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
              "customData": {
                "Skill": 123,
                "Hero": "tank"
              },
              "qosResults": [
                {
                  "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                  "packetLoss": 0.8,
                  "latency": 50
                },
                {
                  "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                  "packetLoss": 0.5,
                  "latency": 20
                }
              ]
            },
            {
              "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
              "customData": {
                "Skill": 250,
                "Hero": "healer"
              },
              "qosResults": [
                {
                  "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                  "packetLoss": 0.7,
                  "latency": 25
                },
                {
                  "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                  "packetLoss": 0.8,
                  "latency": 20
                }
              ]
            }
          ],
          "region": "05083faf-3795-47b8-a0dc-c626089c5ac9",
          "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f",
          "maxPlayers": 5
        }
      },
      "Team": {
        "type": "object",
        "properties": {
          "teamName": {
            "type": "string",
            "description": "The name of the team. The team name should be the same as the team name defined in the rules of matchmaking.",
            "nullable": false
          },
          "teamId": {
            "type": "string",
            "description": "The ID of the team.",
            "nullable": false
          },
          "playerIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "An array of player IDs that represent the players in a team. This ID must exist in the list of players of the Match Properties.",
            "nullable": false
          }
        },
        "x-access-modifier": "public",
        "example": {
          "teamName": "Red Team",
          "teamId": "14f18a3e-921d-4165-90b6-ada353e186ca",
          "playerIDs": [
            "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
            "4f4a6cdc-0e8d-46f9-9497-039e501d515a"
          ]
        }
      },
      "CreateBackfillTicketResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The backfill ticket ID that was newly created."
          }
        },
        "additionalProperties": false,
        "x-access-modifier": "public"
      },
      "MatchmakingResults": {
        "type": "object",
        "description": "Represents the data that is stored by the Matchmaker service when the server is allocated",
        "properties": {
          "matchProperties": {
            "description": "Represents the match properties.",
            "nullable": false,
            "$ref": "#/components/schemas/MatchProperties"
          },
          "generatorName": {
            "type": "string",
            "nullable": true
          },
          "queueName": {
            "type": "string",
            "description": "Matchmaking queue that allocated the server.",
            "nullable": true
          },
          "poolName": {
            "type": "string",
            "description": "Matchmaking pool that allocated the server.",
            "nullable": true
          },
          "environmentId": {
            "type": "string",
            "description": "Unity Gaming Services Project Environment ID.",
            "nullable": true
          },
          "backfillTicketId": {
            "type": "string",
            "description": "The unique ID of the backfill ticket.",
            "nullable": true
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          },
          "poolId": {
            "type": "string",
            "nullable": true,
            "description": "The ID of pool that the match is in."
          }
        },
        "x-access-modifier": "public",
        "example": {
          "matchProperties": {
            "teams": [
              {
                "teamName": "Red Team",
                "teamId": "14f18a3e-921d-4165-90b6-ada353e186ca",
                "playerIDs": [
                  "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1"
                ]
              },
              {
                "teamName": "Blue Team",
                "teamId": "5aa8ae3b-d5b6-463a-9795-9bc10210dc86",
                "playerIDs": [
                  "a67cf7fe-975b-4fd3-b694-e8b8452cc702"
                ]
              }
            ],
            "players": [
              {
                "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
                "customData": {
                  "Skill": 123,
                  "Hero": "tank"
                },
                "qosResults": [
                  {
                    "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                    "packetLoss": 0.8,
                    "latency": 50
                  },
                  {
                    "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                    "packetLoss": 0.5,
                    "latency": 20
                  }
                ]
              },
              {
                "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
                "customData": {
                  "Skill": 250,
                  "Hero": "healer"
                },
                "qosResults": [
                  {
                    "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                    "packetLoss": 0.7,
                    "latency": 25
                  },
                  {
                    "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                    "packetLoss": 0.8,
                    "latency": 20
                  }
                ]
              }
            ],
            "region": "05083faf-3795-47b8-a0dc-c626089c5ac9",
            "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f"
          },
          "queueName": "default queue",
          "poolName": "default pool",
          "environmentId": "6b83ec25-4073-45c2-ae32-61e7e51ab722",
          "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f",
          "matchId": "62bd4ec2-e7ce-4202-93ed-67c3d3148d4f",
          "poolId": "4badd0c2-5c28-44b3-bfd2-bef5f2153e0e"
        }
      },
      "StoredMatchmakingResults": {
        "type": "object",
        "description": "Represents the data that is stored by the Matchmaker service when a match is created",
        "properties": {
          "matchProperties": {
            "description": "Represents the match properties.",
            "nullable": false,
            "$ref": "#/components/schemas/StoredMatchProperties"
          },
          "generatorName": {
            "type": "string",
            "nullable": true
          },
          "queueName": {
            "type": "string",
            "description": "Matchmaking queue that created the match.",
            "nullable": true
          },
          "poolName": {
            "type": "string",
            "description": "Matchmaking pool that created the match.",
            "nullable": true
          },
          "environmentId": {
            "type": "string",
            "description": "Unity Gaming Services Project Environment ID.",
            "nullable": true
          },
          "backfillTicketId": {
            "type": "string",
            "description": "The unique ID of the backfill ticket.",
            "nullable": true
          },
          "matchId": {
            "type": "string",
            "nullable": true,
            "description": "Unique ID of the match."
          },
          "poolId": {
            "type": "string",
            "nullable": true,
            "description": "The ID of pool that the match is in."
          }
        },
        "x-access-modifier": "public",
        "example": {
          "matchProperties": {
            "teams": [
              {
                "teamName": "Red Team",
                "teamId": "14f18a3e-921d-4165-90b6-ada353e186ca",
                "playerIDs": [
                  "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1"
                ]
              },
              {
                "teamName": "Blue Team",
                "teamId": "5aa8ae3b-d5b6-463a-9795-9bc10210dc86",
                "playerIDs": [
                  "a67cf7fe-975b-4fd3-b694-e8b8452cc702"
                ]
              }
            ],
            "players": [
              {
                "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
                "customData": {
                  "Skill": 123,
                  "Hero": "tank"
                },
                "qosResults": [
                  {
                    "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                    "packetLoss": 0.8,
                    "latency": 50
                  },
                  {
                    "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                    "packetLoss": 0.5,
                    "latency": 20
                  }
                ]
              },
              {
                "id": "d8d7bb2f-a524-4e93-a44a-e8bc10d5d8e1",
                "customData": {
                  "Skill": 250,
                  "Hero": "healer"
                },
                "qosResults": [
                  {
                    "regionId": "75721794-e9fd-4d8a-9879-aa853ed18885",
                    "packetLoss": 0.7,
                    "latency": 25
                  },
                  {
                    "regionId": "1e29bd54-8acc-433a-ae7d-28ae5fc192a1",
                    "packetLoss": 0.8,
                    "latency": 20
                  }
                ]
              }
            ],
            "region": "05083faf-3795-47b8-a0dc-c626089c5ac9",
            "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f"
          },
          "queueName": "default queue",
          "poolName": "default pool",
          "environmentId": "6b83ec25-4073-45c2-ae32-61e7e51ab722",
          "backfillTicketId": "dc156067-d140-4c5e-b7d4-90ec51c8333f",
          "matchId": "62bd4ec2-e7ce-4202-93ed-67c3d3148d4f",
          "poolId": "4badd0c2-5c28-44b3-bfd2-bef5f2153e0e"
        }
      }
    },
    "securitySchemes": {
      "ClientAuth": {
        "type": "http",
        "scheme": "bearer",
        "description": "Requests must include as a bearer token the access token provided by the Authentication service when logging-in or signing-up a player. The access token's private claims include player and project IDs which are used to authorize the request. To get started with Authentication, please visit the [Client Authentication section](https://services.docs.unity.com/docs/client-auth)."
      },
      "GameServerHostingAuth": {
        "type": "http",
        "scheme": "bearer",
        "description": "Requests must include as a bearer token the access token provided by performing a GET request to `http://localhost:8086/token'` from the server allocated with Game Server Hosting. To get started with Game Server Hosting Authentication, please visit the [Authentication section](https://docs.unity.com/matchmaker/authentication.html) of the matchmaker documentation."
      },
      "ServiceAccount": {
        "type": "http",
        "scheme": "bearer",
        "description": "Requests must include as a bearer token the access token provided by the service account token exchange API. To get started with service accounts, please visit the [Service Account Authentication section](https://services.docs.unity.com/docs/service-account-auth)."
      }
    }
  },
  "tags": [
    {
      "name": "problem_details_model",
      "x-displayName": "ProblemDetails Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/ProblemDetails\" />\n"
    },
    {
      "name": "attributes_model",
      "x-displayName": "Attributes Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/Attributes\" />\n"
    },
    {
      "name": "create_ticket_request_model",
      "x-displayName": "CreateTicketRequest Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CreateTicketRequest\" />\n"
    },
    {
      "name": "create_ticket_response_model",
      "x-displayName": "CreateTicketResponse Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CreateTicketResponse\" />\n"
    },
    {
      "name": "ticket_status_response_model",
      "x-displayName": "TicketStatusResponse Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/TicketStatusResponse\" />\n"
    },
    {
      "name": "multiplay_assignment_model",
      "x-displayName": "MultiplayAssignment Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/MultiplayAssignment\" />\n"
    },
    {
      "name": "matchid_assignment_model",
      "x-displayName": "MatchIdAssignment Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/MatchIdAssignment\" />\n"
    },
    {
      "name": "ipport_assignment_model",
      "x-displayName": "IpPortAssignment Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/IpPortAssignment\" />\n"
    },
    {
      "name": "custom_assignment_model",
      "x-displayName": "CustomAssignment Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CustomAssignment\" />\n"
    },
    {
      "name": "qos_result_model",
      "x-displayName": "QosResult Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/QosResult\" />\n"
    },
    {
      "name": "player_model",
      "x-displayName": "Player Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/Player\" />\n"
    },
    {
      "name": "backfill_ticket_model",
      "x-displayName": "BackfillTicket Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/BackfillTicket\" />\n"
    },
    {
      "name": "create_backfill_ticket_request_model",
      "x-displayName": "CreateBackfillTicketRequest Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CreateBackfillTicketRequest\" />\n"
    },
    {
      "name": "backfill_ticket_properties_model",
      "x-displayName": "BackfillTicketProperties Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/BackfillTicketProperties\" />\n"
    },
    {
      "name": "ip_port_connection_details_model",
      "x-displayName": "IpPortConnectionDetails Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/IpPortConnectionDetails\" />\n"
    },
    {
      "name": "custom_connection_details_model",
      "x-displayName": "CustomConnectionDetails Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CustomConnectionDetails\" />\n"
    },
    {
      "name": "match_properties_model",
      "x-displayName": "MatchProperties Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/MatchProperties\" />\n"
    },
    {
      "name": "stored_match_properties_model",
      "x-displayName": "StoredMatchProperties Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/StoredMatchProperties\" />\n"
    },
    {
      "name": "team_model",
      "x-displayName": "Team Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/Team\" />\n"
    },
    {
      "name": "create_backfill_ticket_response_model",
      "x-displayName": "CreateBackfillTicketResponse Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/CreateBackfillTicketResponse\" />\n"
    },
    {
      "name": "matchmaking_results_model",
      "x-displayName": "MatchmakingResults Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/MatchmakingResults\" />\n"
    },
    {
      "name": "stored_matchmaking_results_model",
      "x-displayName": "StoredMatchmakingResults Model",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/StoredMatchmakingResults\" />\n"
    }
  ],
  "x-tagGroups": [
    {
      "name": "API",
      "tags": [
        "Tickets",
        "Backfill",
        "Matches"
      ]
    },
    {
      "name": "Models",
      "tags": [
        "matchmaking_results_model",
        "backfill_ticket_properties_model"
      ]
    }
  ]
}
```