> ## 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.

# Create Matchmaking Ticket

> Create a matchmaking ticket as a client.

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| MatchmakingAttributeInvalid | 2046 |
| MatchmakingBadRequest | 2059 |
| MatchmakingEntityInvalid | 2001 |
| MatchmakingMemberProfileInvalid | 2032 |
| MatchmakingNumberOfPlayersInTicketTooLarge | 2044 |
| MatchmakingPlayerAttributesInvalid | 2002 |
| MatchmakingPlayerAttributesTooLarge | 2043 |
| MatchmakingQueueNotFound | 2016 |
| MatchmakingRateLimitExceeded | 2054 |
| MatchmakingTicketMembershipLimitExceeded | 2055 |
| MatchmakingUnauthorized | 2056 |




## OpenAPI

````yaml post /Match/CreateMatchmakingTicket
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/CreateMatchmakingTicket:
    post:
      tags:
        - Matchmaking
      summary: Create Matchmaking Ticket
      description: |
        Create a matchmaking ticket as a client.

        ## Error codes

        This operation may return the following PlayFab errors:

        | Error | Code |
        | --- | --- |
        | MatchmakingAttributeInvalid | 2046 |
        | MatchmakingBadRequest | 2059 |
        | MatchmakingEntityInvalid | 2001 |
        | MatchmakingMemberProfileInvalid | 2032 |
        | MatchmakingNumberOfPlayersInTicketTooLarge | 2044 |
        | MatchmakingPlayerAttributesInvalid | 2002 |
        | MatchmakingPlayerAttributesTooLarge | 2043 |
        | MatchmakingQueueNotFound | 2016 |
        | MatchmakingRateLimitExceeded | 2054 |
        | MatchmakingTicketMembershipLimitExceeded | 2055 |
        | MatchmakingUnauthorized | 2056 |
      operationId: CreateMatchmakingTicket
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMatchmakingTicketRequest'
        description: >-
          The client specifies the creator's attributes and optionally a list of
          other users to match with.
      responses:
        '200':
          $ref: '#/components/responses/CreateMatchmakingTicketResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    CreateMatchmakingTicketRequest:
      description: >-
        The client specifies the creator's attributes and optionally a list of
        other users to match with.
      type: object
      properties:
        Creator:
          allOf:
            - $ref: '#/components/schemas/MatchmakingPlayer'
          description: The User who created this ticket.
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        GiveUpAfterSeconds:
          description: How long to attempt matching this ticket in seconds.
          type: number
          x-actualtype: int32
        MembersToMatchWith:
          description: A list of Entity Keys of other users to match with.
          type: array
          items:
            $ref: '#/components/schemas/EntityKey'
          x-isclass: true
        QueueName:
          description: The Id of a match queue.
          type: string
      required:
        - Creator
        - GiveUpAfterSeconds
        - QueueName
      example:
        Creator: {}
        MembersToMatchWith: []
        GiveUpAfterSeconds: 100
        QueueName: custom123
    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
    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
    CreateMatchmakingTicketResult:
      type: object
      properties:
        TicketId:
          description: The Id of the ticket to find a match for.
          type: string
      required:
        - TicketId
      example:
        TicketId: 1c4b0daa-150e-47ae-9923-d770c0f9b07c
    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
    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:
    CreateMatchmakingTicketResult:
      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/CreateMatchmakingTicketResult'
            example:
              code: 200
              status: OK
              data:
                TicketId: 1c4b0daa-150e-47ae-9923-d770c0f9b07c
    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

- [Create Matchmaking Ticket](/api-reference/matchmaking/create-matchmaking-ticket.md)
- [PFMultiplayerCreateMatchmakingTicket](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmultiplayercreatematchmakingticket.md)
- [Matchmaking quickstart](/services/playfab/multiplayer/matchmaking/quickstart.md)
- [PlayFabMultiplayer.CreateMatchmakingTicket](/services/playfab/multiplayer/lobby/unity-multiplayer-api-reference/PlayFab.Multiplayer/PlayFabMultiplayer/CreateMatchmakingTicket.md)
- [Matchmaking SDK quickstart](/services/playfab/multiplayer/matchmaking/quickstart-client-sdk.md)
