> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Matchmaking Ticket

> Get a matchmaking ticket by ticket Id.

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| MatchmakingEntityInvalid | 2001 |
| MatchmakingQueueNotFound | 2016 |
| MatchmakingRateLimitExceeded | 2054 |
| MatchmakingRequestTypeMismatch | 2058 |
| MatchmakingTicketNotFound | 2018 |
| MatchmakingUnauthorized | 2056 |




## OpenAPI

````yaml post /Match/GetMatchmakingTicket
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Multiplayer API
  description: >-
    API methods for managing multiplayer servers. API methods for managing
    parties. The lobby service helps players group together to play multiplayer
    games. It is often used as a rendezvous point for players to share
    connection information. The TrueSkill service helps titles to estimate a
    player's skill based on their match results. The player skill values from
    this service are commonly used by a matchmaking service to provide players
    with balanced matches.
  termsOfService: https://playfab.com/terms/
  contact:
    url: https://community.playfab.com/index.html
  license:
    name: Apache 2.0
    url: https://github.com/PlayFab/API_Specs/blob/master/LICENSE
servers:
  - url: https://{titleId}.playfabapi.com
    description: PlayFab title endpoint
    variables:
      titleId:
        default: your_title_id
        description: Your PlayFab title ID (hex).
security: []
tags:
  - name: Lobby
    description: ''
  - name: Matchmaking
    description: Matchmaking APIs
  - name: Matchmaking Admin
    description: Matchmaking Admin APIs
  - name: MultiplayerServer
    description: Multiplayer Server APIs
  - name: PubSub
    description: PlayFab PubSub APIs
  - name: TrueSkill
    description: TrueSkill APIs
  - name: TrueSkill Admin
    description: TrueSkill Admin APIs
paths:
  /Match/GetMatchmakingTicket:
    post:
      tags:
        - Matchmaking
      summary: Get Matchmaking Ticket
      description: |
        Get a matchmaking ticket by ticket Id.

        ## Error codes

        This operation may return the following PlayFab errors:

        | Error | Code |
        | --- | --- |
        | MatchmakingEntityInvalid | 2001 |
        | MatchmakingQueueNotFound | 2016 |
        | MatchmakingRateLimitExceeded | 2054 |
        | MatchmakingRequestTypeMismatch | 2058 |
        | MatchmakingTicketNotFound | 2018 |
        | MatchmakingUnauthorized | 2056 |
      operationId: GetMatchmakingTicket
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetMatchmakingTicketRequest'
        description: >-
          The ticket includes the invited players, their attributes if they have
          joined, the ticket status, the match Id when applicable, etc. Only
          servers, the ticket creator and the invited players can get the
          ticket.
      responses:
        '200':
          $ref: '#/components/responses/GetMatchmakingTicketResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    GetMatchmakingTicketRequest:
      description: >-
        The ticket includes the invited players, their attributes if they have
        joined, the ticket status, the match Id when applicable, etc. Only
        servers, the ticket creator and the invited players can get the ticket.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        EscapeObject:
          description: >-
            Determines whether the matchmaking attributes will be returned as an
            escaped JSON string or as an un-escaped JSON object.
          type: boolean
        QueueName:
          description: The name of the queue to find a match for.
          type: string
        TicketId:
          description: The Id of the ticket to find a match for.
          type: string
      required:
        - TicketId
        - QueueName
        - EscapeObject
      example:
        TicketId: 1c4b0daa-150e-47ae-9923-d770c0f9b07c
        QueueName: custom123
    GetMatchmakingTicketResult:
      type: object
      properties:
        CancellationReasonString:
          description: >-
            The reason why the current ticket was canceled. This field is only
            set if the ticket is in canceled state. Please retry if
            CancellationReason is RetryRequired.
          type: string
        ChangeNumber:
          description: >-
            Change number used for differentiating older matchmaking status
            updates from newer ones.
          type: number
          x-actualtype: uint32
        Created:
          description: The server date and time at which ticket was created.
          type: string
        Creator:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The Creator's entity key.
        GiveUpAfterSeconds:
          description: How long to attempt matching this ticket in seconds.
          type: number
          x-actualtype: int32
        MatchId:
          description: The Id of a match.
          type: string
        Members:
          description: A list of Users that have joined this ticket.
          type: array
          items:
            $ref: '#/components/schemas/MatchmakingPlayer'
          x-isclass: true
        MembersToMatchWith:
          description: A list of PlayFab Ids of Users to match with.
          type: array
          items:
            $ref: '#/components/schemas/EntityKey'
          x-isclass: true
        QueueName:
          description: The Id of a match queue.
          type: string
        Status:
          description: >-
            The current ticket status. Possible values are: WaitingForPlayers,
            WaitingForMatch, WaitingForServer, Canceled and Matched.
          type: string
        TicketId:
          description: The Id of the ticket to find a match for.
          type: string
      required:
        - TicketId
        - QueueName
        - Created
        - Status
        - GiveUpAfterSeconds
        - Members
        - Creator
      example:
        TicketId: 1c4b0daa-150e-47ae-9923-d770c0f9b07c
        QueueName: custom123
        MatchId: 4e0c5fd7-80e9-4744-b0ce-061a7f067ff5
        Created: '2016-08-23T12:33:14'
        Status: Matched
        GiveUpAfterSeconds: 100
        MembersToMatchWith:
          - Id: '456456456'
            Type: title_player_account
            TypeString: title_player_account
        Members: []
        Creator:
          Id: '123123123'
          Type: title_player_account
          TypeString: title_player_account
        ChangeNumber: 10
    ApiErrorWrapper:
      description: The basic wrapper around every failed API response
      type: object
      properties:
        code:
          description: Numerical HTTP code
          type: integer
        status:
          description: String HTTP code
          type: string
        error:
          description: Playfab error code
          type: string
        errorCode:
          description: Numerical PlayFab error code
          type: integer
        errorMessage:
          description: Description for the PlayFab errorCode
          type: string
        errorDetails:
          description: Detailed description of individual issues with the request object
          type: object
      required:
        - code
        - errorCode
    EntityKey:
      description: >-
        Combined entity type and ID structure which uniquely identifies a single
        entity.
      type: object
      properties:
        Id:
          description: Unique ID of the entity.
          type: string
        Type:
          description: >-
            Entity type. See
            https://learn.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types
          type: string
      required:
        - Id
    MatchmakingPlayer:
      description: A user in a matchmaking ticket.
      type: object
      properties:
        Attributes:
          allOf:
            - $ref: '#/components/schemas/MatchmakingPlayerAttributes'
          description: The user's attributes custom to the title.
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The entity key of the matchmaking user.
      required:
        - Entity
    MatchmakingPlayerAttributes:
      description: The matchmaking attributes for a user.
      type: object
      properties:
        DataObject:
          description: A data object representing a user's attributes.
          type: object
        EscapedDataObject:
          description: An escaped data object representing a user's attributes.
          type: string
  responses:
    GetMatchmakingTicketResult:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                type: integer
                description: >-
                  The Http status code. If X-ReportErrorAsSuccess header is set
                  to true, this will report the actual http error code.
              status:
                type: string
                description: The Http status code as a string.
              data:
                $ref: '#/components/schemas/GetMatchmakingTicketResult'
            example:
              code: 200
              status: OK
              data:
                TicketId: 1c4b0daa-150e-47ae-9923-d770c0f9b07c
                QueueName: custom123
                MatchId: 4e0c5fd7-80e9-4744-b0ce-061a7f067ff5
                Created: '2016-08-23T12:33:14'
                Status: Matched
                GiveUpAfterSeconds: 100
                MembersToMatchWith:
                  - Id: '456456456'
                    Type: title_player_account
                    TypeString: title_player_account
                Members: []
                Creator:
                  Id: '123123123'
                  Type: title_player_account
                  TypeString: title_player_account
                ChangeNumber: 10
    ApiErrorWrapper:
      description: This is the outer wrapper for all responses with errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorWrapper'
  securitySchemes:
    EntityToken:
      type: apiKey
      in: header
      name: X-EntityToken
      description: >-
        This API requires an Entity Session Token, available from the Entity
        GetEntityToken method.

````

## Related topics

- [Get Matchmaking Ticket](/api-reference/matchmaking/get-matchmaking-ticket.md)
- [Matchmaking quickstart](/services/playfab/multiplayer/matchmaking/quickstart.md)
- [MatchmakingTicket](/services/playfab/multiplayer/lobby/unity-multiplayer-api-reference/PlayFab.Multiplayer/MatchmakingTicket/overview.md)
- [PFMatchmakingTicketGetTicketId](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmatchmakingticketgetticketid.md)
- [PFMatchmakingTicketGetStatus](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmatchmakingticketgetstatus.md)
