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

> SDK support is limited to C# and Java for this API. Get a matchmaking queue configuration.

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| MatchmakingQueueNotFound | 2016 |




## OpenAPI

````yaml /services/playfab/api-references/rest/multiplayer/multiplayer.openapi.json post /Match/GetMatchmakingQueue
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/GetMatchmakingQueue:
    post:
      tags:
        - Matchmaking Admin
      summary: Get Matchmaking Queue
      description: >
        SDK support is limited to C# and Java for this API. Get a matchmaking
        queue configuration.


        ## Error codes


        This operation may return the following PlayFab errors:


        | Error | Code |

        | --- | --- |

        | MatchmakingQueueNotFound | 2016 |
      operationId: GetMatchmakingQueue
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetMatchmakingQueueRequest'
        description: Gets the current configuration for a queue.
      responses:
        '200':
          $ref: '#/components/responses/GetMatchmakingQueueResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    GetMatchmakingQueueRequest:
      description: Gets the current configuration for a queue.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        QueueName:
          description: The Id of the matchmaking queue to retrieve.
          type: string
      example:
        QueueName: custom123
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    GetMatchmakingQueueResult:
      type: object
      properties:
        MatchmakingQueue:
          allOf:
            - $ref: '#/components/schemas/MatchmakingQueueConfig'
          description: The matchmaking queue config.
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    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
    MatchmakingQueueConfig:
      type: object
      properties:
        BuildAliasParams:
          allOf:
            - $ref: '#/components/schemas/BuildAliasParams'
          description: >-
            This is the buildAlias that will be used to allocate the multiplayer
            server for the match.
        BuildId:
          description: >-
            This is the buildId that will be used to allocate the multiplayer
            server for the match.
          type: string
        DifferenceRules:
          description: List of difference rules used to find an optimal match.
          type: array
          items:
            $ref: '#/components/schemas/DifferenceRule'
          x-isclass: true
        MatchTotalRules:
          description: List of match total rules used to find an optimal match.
          type: array
          items:
            $ref: '#/components/schemas/MatchTotalRule'
          x-isclass: true
        MaxMatchSize:
          description: Maximum number of players in a match.
          type: number
          x-actualtype: uint32
        MaxTicketSize:
          description: Maximum number of players in a ticket. Optional.
          type: number
          x-actualtype: uint32
        MinMatchSize:
          description: Minimum number of players in a match.
          type: number
          x-actualtype: uint32
        Name:
          description: Unique identifier for a Queue. Chosen by the developer.
          type: string
        RegionSelectionRule:
          allOf:
            - $ref: '#/components/schemas/RegionSelectionRule'
          description: Region selection rule used to find an optimal match.
        ServerAllocationEnabled:
          description: Boolean flag to enable server allocation for the queue.
          type: boolean
        SetIntersectionRules:
          description: List of set intersection rules used to find an optimal match.
          type: array
          items:
            $ref: '#/components/schemas/SetIntersectionRule'
          x-isclass: true
        StatisticsVisibilityToPlayers:
          allOf:
            - $ref: '#/components/schemas/StatisticsVisibilityToPlayers'
          description: Controls which statistics are visible to players.
        StringEqualityRules:
          description: List of string equality rules used to find an optimal match.
          type: array
          items:
            $ref: '#/components/schemas/StringEqualityRule'
          x-isclass: true
        TeamDifferenceRules:
          description: List of team difference rules used to find an optimal match.
          type: array
          items:
            $ref: '#/components/schemas/TeamDifferenceRule'
          x-isclass: true
        Teams:
          description: >-
            The team configuration for a match. This may be null if there are no
            teams.
          type: array
          items:
            $ref: '#/components/schemas/MatchmakingQueueTeam'
          x-isclass: true
        TeamSizeBalanceRule:
          allOf:
            - $ref: '#/components/schemas/TeamSizeBalanceRule'
          description: Team size balance rule used to find an optimal match.
        TeamTicketSizeSimilarityRule:
          allOf:
            - $ref: '#/components/schemas/TeamTicketSizeSimilarityRule'
          description: Team ticket size similarity rule used to find an optimal match.
      required:
        - Name
        - MinMatchSize
        - MaxMatchSize
        - ServerAllocationEnabled
      example:
        Name: ExampleQueueName
        MinMatchSize: 7
        MaxMatchSize: 8
        MaxTicketSize: 2
        ServerAllocationEnabled: true
        BuildId: 065a3208-39af-4691-8794-5f774c367ac2
        DifferenceRules:
          - Difference: 10
            MergeFunction: Average
            DefaultAttributeValue: 0
            LinearExpansion:
              Delta: 0.5
              Limit: 20
              SecondsBetweenExpansions: 5
            Attribute:
              Path: ExampleAttributeDifference
            Weight: 1
            Name: ExampleNameDifference
            SecondsUntilOptional: 50
        StringEqualityRules:
          - DefaultAttributeValue: ExampleDefault
            Expansion:
              EnabledOverrides:
                - false
                - true
                - true
                - false
              SecondsBetweenExpansions: 5
            Attribute:
              Path: ExampleAttributeStringEquality
            Weight: 1
            Name: ExampleNameStringEquality
            SecondsUntilOptional: 50
        MatchTotalRules:
          - Attribute:
              Path: ExampleAttribute
            Min: 2
            Weight: 1
            Expansion:
              MaxOverrides:
                - Value: 4
                - Value: 4
                - null
              SecondsBetweenExpansions: 5
            Name: MatchTotalRule
            SecondsUntilOptional: 50
        SetIntersectionRules:
          - DefaultAttributeValue:
              - a
              - b
              - c
            MinIntersectionSize: 2
            LinearExpansion:
              Delta: 2
              SecondsBetweenExpansions: 5
            Attribute:
              Path: ExampleAttributeSetIntersectionRule
            Weight: 1
            Name: ExampleNameSetIntersectionRule
            SecondsUntilOptional: 50
        RegionSelectionRule:
          MaxLatency: 250
          Path: Latencies
          LinearExpansion:
            Delta: 10
            Limit: 300
            SecondsBetweenExpansions: 5
          Weight: 1
          Name: RegionSelectionRule
          SecondsUntilOptional: 50
        TeamSizeBalanceRule:
          Difference: 1
          LinearExpansion:
            Delta: 1
            Limit: 5
            SecondsBetweenExpansions: 5
          Name: TeamSizeBalanceRule
          SecondsUntilOptional: 50
        TeamDifferenceRules:
          - Attribute:
              Path: ExampleAttribute
            Difference: 2
            LinearExpansion:
              Delta: 1
              Limit: 5
              SecondsBetweenExpansions: 5
            Name: TeamDifferenceRule
            SecondsUntilOptional: 50
        TeamTicketSizeSimilarityRule:
          Name: TeamTicketSizeSimilarityRule
          SecondsUntilOptional: 180
        Teams:
          - Name: monster
            MinTeamSize: 1
            MaxTeamSize: 1
          - Name: hunters
            MinTeamSize: 4
            MaxTeamSize: 8
        StatisticsVisibilityToPlayers:
          ShowNumberOfPlayersMatching: true
          ShowTimeToMatch: true
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    BuildAliasParams:
      type: object
      properties:
        AliasId:
          description: The guid string alias ID to use for the request.
          type: string
      required:
        - AliasId
    DifferenceRule:
      type: object
      properties:
        Attribute:
          allOf:
            - $ref: '#/components/schemas/QueueRuleAttribute'
          description: Description of the attribute used by this rule to match tickets.
        AttributeNotSpecifiedBehavior:
          allOf:
            - $ref: '#/components/schemas/AttributeNotSpecifiedBehavior'
          description: >-
            Describes the behavior when an attribute is not specified in the
            ticket creation request or in the user's entity profile.
        CustomExpansion:
          allOf:
            - $ref: '#/components/schemas/CustomDifferenceRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule. When this is set,
            Difference is ignored.
        DefaultAttributeValue:
          description: >-
            The default value assigned to tickets that are missing the attribute
            specified by AttributePath (assuming that
            AttributeNotSpecifiedBehavior is false). Optional.
          type: number
          x-actualtype: double
        Difference:
          description: >-
            The allowed difference between any two tickets at the start of
            matchmaking.
          type: number
          x-actualtype: double
        LinearExpansion:
          allOf:
            - $ref: '#/components/schemas/LinearDifferenceRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule.
        MergeFunction:
          allOf:
            - $ref: '#/components/schemas/AttributeMergeFunction'
          description: >-
            How values are treated when there are multiple players in a single
            ticket.
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
        Weight:
          description: The relative weight of this rule compared to others.
          type: number
          x-actualtype: double
      required:
        - Difference
        - MergeFunction
        - Attribute
        - AttributeNotSpecifiedBehavior
        - Weight
        - Name
      example:
        Difference: 10
        MergeFunction: Average
        DefaultAttributeValue: 0
        LinearExpansion:
          Delta: 0.5
          Limit: 20
          SecondsBetweenExpansions: 5
        Attribute:
          Path: ExampleAttributeDifference
        Weight: 1
        Name: ExampleNameDifference
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    MatchTotalRule:
      type: object
      properties:
        Attribute:
          allOf:
            - $ref: '#/components/schemas/QueueRuleAttribute'
          description: Description of the attribute used by this rule to match tickets.
        Expansion:
          allOf:
            - $ref: '#/components/schemas/MatchTotalRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals.
        Max:
          description: The maximum total value for a group. Must be >= Min.
          type: number
          x-actualtype: double
        Min:
          description: The minimum total value for a group. Must be >=2.
          type: number
          x-actualtype: double
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
        Weight:
          description: The relative weight of this rule compared to others.
          type: number
          x-actualtype: double
      required:
        - Attribute
        - Min
        - Max
        - Weight
        - Name
      example:
        Attribute:
          Path: ExampleAttribute
        Min: 2
        Weight: 1
        Expansion:
          MaxOverrides:
            - Value: 4
            - Value: 4
            - null
          SecondsBetweenExpansions: 5
        Name: MatchTotalRule
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    RegionSelectionRule:
      type: object
      properties:
        CustomExpansion:
          allOf:
            - $ref: '#/components/schemas/CustomRegionSelectionRuleExpansion'
          description: >-
            Controls how the Max Latency parameter expands over time. Only one
            expansion can be set per rule. When this is set, MaxLatency is
            ignored.
        LinearExpansion:
          allOf:
            - $ref: '#/components/schemas/LinearRegionSelectionRuleExpansion'
          description: >-
            Controls how the Max Latency parameter expands over time. Only one
            expansion can be set per rule.
        MaxLatency:
          description: >-
            Specifies the maximum latency that is allowed between the client and
            the selected server. The value is in milliseconds.
          type: number
          x-actualtype: uint32
        Name:
          description: Friendly name chosen by developer.
          type: string
        Path:
          description: Specifies which attribute in a ticket to use.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
        Weight:
          description: The relative weight of this rule compared to others.
          type: number
          x-actualtype: double
      required:
        - MaxLatency
        - Path
        - Weight
        - Name
      example:
        MaxLatency: 250
        Path: Latencies
        LinearExpansion:
          Delta: 10
          Limit: 300
          SecondsBetweenExpansions: 5
        Weight: 1
        Name: RegionSelectionRule
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    SetIntersectionRule:
      type: object
      properties:
        Attribute:
          allOf:
            - $ref: '#/components/schemas/QueueRuleAttribute'
          description: Description of the attribute used by this rule to match tickets.
        AttributeNotSpecifiedBehavior:
          allOf:
            - $ref: '#/components/schemas/AttributeNotSpecifiedBehavior'
          description: >-
            Describes the behavior when an attribute is not specified in the
            ticket creation request or in the user's entity profile.
        CustomExpansion:
          allOf:
            - $ref: '#/components/schemas/CustomSetIntersectionRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule. When this is set,
            MinIntersectionSize is ignored.
        DefaultAttributeValue:
          description: >-
            The default value assigned to tickets that are missing the attribute
            specified by AttributePath (assuming that
            AttributeNotSpecifiedBehavior is UseDefault). Values must be unique.
          type: array
          items:
            type: string
        LinearExpansion:
          allOf:
            - $ref: '#/components/schemas/LinearSetIntersectionRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule.
        MinIntersectionSize:
          description: The minimum number of values that must match between sets.
          type: number
          x-actualtype: uint32
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
        Weight:
          description: The relative weight of this rule compared to others.
          type: number
          x-actualtype: double
      required:
        - MinIntersectionSize
        - Attribute
        - AttributeNotSpecifiedBehavior
        - Weight
        - Name
      example:
        DefaultAttributeValue:
          - a
          - b
          - c
        MinIntersectionSize: 2
        LinearExpansion:
          Delta: 2
          SecondsBetweenExpansions: 5
        Attribute:
          Path: ExampleAttributeSetIntersectionRule
        Weight: 1
        Name: ExampleNameSetIntersectionRule
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    StatisticsVisibilityToPlayers:
      type: object
      properties:
        ShowNumberOfPlayersMatching:
          description: >-
            Whether to allow players to view the current number of players in
            the matchmaking queue.
          type: boolean
        ShowTimeToMatch:
          description: >-
            Whether to allow players to view statistics representing the time it
            takes for tickets to find a match.
          type: boolean
      required:
        - ShowNumberOfPlayersMatching
        - ShowTimeToMatch
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    StringEqualityRule:
      type: object
      properties:
        Attribute:
          allOf:
            - $ref: '#/components/schemas/QueueRuleAttribute'
          description: Description of the attribute used by this rule to match tickets.
        AttributeNotSpecifiedBehavior:
          allOf:
            - $ref: '#/components/schemas/AttributeNotSpecifiedBehavior'
          description: >-
            Describes the behavior when an attribute is not specified in the
            ticket creation request or in the user's entity profile.
        DefaultAttributeValue:
          description: >-
            The default value assigned to tickets that are missing the attribute
            specified by AttributePath (assuming that
            AttributeNotSpecifiedBehavior is false).
          type: string
        Expansion:
          allOf:
            - $ref: '#/components/schemas/StringEqualityRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. For StringEqualityRules, this is limited to turning the
            rule off or on during different intervals.
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
        Weight:
          description: The relative weight of this rule compared to others.
          type: number
          x-actualtype: double
      required:
        - Attribute
        - AttributeNotSpecifiedBehavior
        - Weight
        - Name
      example:
        DefaultAttributeValue: ExampleDefault
        Expansion:
          EnabledOverrides:
            - false
            - true
            - true
            - false
          SecondsBetweenExpansions: 5
        Attribute:
          Path: ExampleAttributeStringEquality
        Weight: 1
        Name: ExampleNameStringEquality
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    TeamDifferenceRule:
      type: object
      properties:
        Attribute:
          allOf:
            - $ref: '#/components/schemas/QueueRuleAttribute'
          description: Description of the attribute used by this rule to match teams.
        CustomExpansion:
          allOf:
            - $ref: '#/components/schemas/CustomTeamDifferenceRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule. When this is set,
            Difference is ignored.
        DefaultAttributeValue:
          description: >-
            The default value assigned to tickets that are missing the attribute
            specified by AttributePath (assuming that
            AttributeNotSpecifiedBehavior is false).
          type: number
          x-actualtype: double
        Difference:
          description: >-
            The allowed difference between any two teams at the start of
            matchmaking.
          type: number
          x-actualtype: double
        LinearExpansion:
          allOf:
            - $ref: '#/components/schemas/LinearTeamDifferenceRuleExpansion'
          description: >-
            Collection of fields relating to expanding this rule at set
            intervals. Only one expansion can be set per rule.
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
      required:
        - Attribute
        - Difference
        - DefaultAttributeValue
        - Name
      example:
        Attribute:
          Path: ExampleAttribute
        Difference: 2
        LinearExpansion:
          Delta: 1
          Limit: 5
          SecondsBetweenExpansions: 5
        Name: TeamDifferenceRule
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    MatchmakingQueueTeam:
      type: object
      properties:
        MaxTeamSize:
          description: The maximum number of players required for the team.
          type: number
          x-actualtype: uint32
        MinTeamSize:
          description: The minimum number of players required for the team.
          type: number
          x-actualtype: uint32
        Name:
          description: A name to identify the team. This is case insensitive.
          type: string
      required:
        - Name
        - MinTeamSize
        - MaxTeamSize
      example:
        Name: red
        MinTeamSize: 4
        MaxTeamSize: 8
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    TeamSizeBalanceRule:
      type: object
      properties:
        CustomExpansion:
          allOf:
            - $ref: '#/components/schemas/CustomTeamSizeBalanceRuleExpansion'
          description: >-
            Controls how the Difference parameter expands over time. Only one
            expansion can be set per rule. When this is set, Difference is
            ignored.
        Difference:
          description: The allowed difference in team size between any two teams.
          type: number
          x-actualtype: uint32
        LinearExpansion:
          allOf:
            - $ref: '#/components/schemas/LinearTeamSizeBalanceRuleExpansion'
          description: >-
            Controls how the Difference parameter expands over time. Only one
            expansion can be set per rule.
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
      required:
        - Difference
        - Name
      example:
        Difference: 1
        LinearExpansion:
          Delta: 1
          Limit: 5
          SecondsBetweenExpansions: 5
        Name: TeamSizeBalanceRule
        SecondsUntilOptional: 50
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    TeamTicketSizeSimilarityRule:
      type: object
      properties:
        Name:
          description: Friendly name chosen by developer.
          type: string
        SecondsUntilOptional:
          description: >-
            How many seconds before this rule is no longer enforced (but tickets
            that comply with this rule will still be prioritized over those that
            don't). Leave blank if this rule is always enforced.
          type: number
          x-actualtype: uint32
      required:
        - Name
      example:
        Name: TeamTicketSizeSimilarityRule
        SecondsUntilOptional: 180
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    QueueRuleAttribute:
      type: object
      properties:
        Path:
          description: Specifies which attribute in a ticket to use.
          type: string
        Source:
          allOf:
            - $ref: '#/components/schemas/AttributeSource'
          description: Specifies which source the attribute comes from.
      required:
        - Path
        - Source
      example:
        Path: ExampleAttribute
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    AttributeNotSpecifiedBehavior:
      type: string
      enum:
        - UseDefault
        - MatchAny
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    CustomDifferenceRuleExpansion:
      type: object
      properties:
        DifferenceOverrides:
          description: >-
            Manually specify the values to use for each expansion interval (this
            overrides Difference, Delta, and MaxDifference).
          type: array
          items:
            $ref: '#/components/schemas/OverrideDouble'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - DifferenceOverrides
        - SecondsBetweenExpansions
      example:
        DifferenceOverrides:
          - Value: 2
          - Value: 4
          - null
          - Value: 6
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    LinearDifferenceRuleExpansion:
      type: object
      properties:
        Delta:
          description: This value gets added to Difference at every expansion interval.
          type: number
          x-actualtype: double
        Limit:
          description: >-
            Once the total difference reaches this value, expansion stops.
            Optional.
          type: number
          x-actualtype: double
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - Delta
        - SecondsBetweenExpansions
      example:
        Delta: 0.5
        Limit: 20
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    AttributeMergeFunction:
      type: string
      enum:
        - Min
        - Max
        - Average
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    MatchTotalRuleExpansion:
      type: object
      properties:
        MaxOverrides:
          description: >-
            Manually specify the values to use for each expansion interval. When
            this is set, Max is ignored.
          type: array
          items:
            $ref: '#/components/schemas/OverrideDouble'
          x-isclass: true
        MinOverrides:
          description: >-
            Manually specify the values to use for each expansion interval. When
            this is set, Min is ignored.
          type: array
          items:
            $ref: '#/components/schemas/OverrideDouble'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - SecondsBetweenExpansions
      example:
        MaxOverrides:
          - Value: 4
          - Value: 4
          - null
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    CustomRegionSelectionRuleExpansion:
      type: object
      properties:
        MaxLatencyOverrides:
          description: >-
            Manually specify the maximum latency to use for each expansion
            interval.
          type: array
          items:
            $ref: '#/components/schemas/OverrideUnsignedInt'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - MaxLatencyOverrides
        - SecondsBetweenExpansions
      example:
        MaxLatencyOverrides:
          - Value: 250
          - Value: 500
          - null
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    LinearRegionSelectionRuleExpansion:
      type: object
      properties:
        Delta:
          description: This value gets added to MaxLatency at every expansion interval.
          type: number
          x-actualtype: uint32
        Limit:
          description: Once the max Latency reaches this value, expansion stops.
          type: number
          x-actualtype: uint32
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - Delta
        - Limit
        - SecondsBetweenExpansions
      example:
        Delta: 10
        Limit: 300
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    CustomSetIntersectionRuleExpansion:
      type: object
      properties:
        MinIntersectionSizeOverrides:
          description: Manually specify the values to use for each expansion interval.
          type: array
          items:
            $ref: '#/components/schemas/OverrideUnsignedInt'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - MinIntersectionSizeOverrides
        - SecondsBetweenExpansions
      example:
        MinIntersectionSizeOverrides:
          - Value: 6
          - Value: 4
          - null
          - Value: 3
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    LinearSetIntersectionRuleExpansion:
      type: object
      properties:
        Delta:
          description: >-
            This value gets added to MinIntersectionSize at every expansion
            interval.
          type: number
          x-actualtype: uint32
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - Delta
        - SecondsBetweenExpansions
      example:
        Delta: 2
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    StringEqualityRuleExpansion:
      type: object
      properties:
        EnabledOverrides:
          description: >-
            List of bools specifying whether the rule is applied during this
            expansion.
          type: array
          items:
            type: boolean
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - EnabledOverrides
        - SecondsBetweenExpansions
      example:
        EnabledOverrides:
          - false
          - true
          - true
          - false
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    CustomTeamDifferenceRuleExpansion:
      type: object
      properties:
        DifferenceOverrides:
          description: >-
            Manually specify the team difference value to use for each expansion
            interval.
          type: array
          items:
            $ref: '#/components/schemas/OverrideDouble'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - DifferenceOverrides
        - SecondsBetweenExpansions
      example:
        DifferenceOverrides:
          - Value: 1
          - Value: 3
          - null
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    LinearTeamDifferenceRuleExpansion:
      type: object
      properties:
        Delta:
          description: This value gets added to Difference at every expansion interval.
          type: number
          x-actualtype: double
        Limit:
          description: >-
            Once the total difference reaches this value, expansion stops.
            Optional.
          type: number
          x-actualtype: double
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - Delta
        - SecondsBetweenExpansions
      example:
        Delta: 1
        Limit: 5
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    CustomTeamSizeBalanceRuleExpansion:
      type: object
      properties:
        DifferenceOverrides:
          description: >-
            Manually specify the team size difference to use for each expansion
            interval.
          type: array
          items:
            $ref: '#/components/schemas/OverrideUnsignedInt'
          x-isclass: true
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - DifferenceOverrides
        - SecondsBetweenExpansions
      example:
        DifferenceOverrides:
          - Value: 1
          - Value: 3
          - null
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    LinearTeamSizeBalanceRuleExpansion:
      type: object
      properties:
        Delta:
          description: This value gets added to Difference at every expansion interval.
          type: number
          x-actualtype: uint32
        Limit:
          description: >-
            Once the total difference reaches this value, expansion stops.
            Optional.
          type: number
          x-actualtype: uint32
        SecondsBetweenExpansions:
          description: How many seconds before this rule is expanded.
          type: number
          x-actualtype: uint32
      required:
        - Delta
        - SecondsBetweenExpansions
      example:
        Delta: 1
        Limit: 5
        SecondsBetweenExpansions: 5
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    AttributeSource:
      type: string
      enum:
        - User
        - PlayerEntity
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    OverrideDouble:
      type: object
      properties:
        Value:
          description: The custom expansion value.
          type: number
          x-actualtype: double
      required:
        - Value
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
    OverrideUnsignedInt:
      type: object
      properties:
        Value:
          description: The custom expansion value.
          type: number
          x-actualtype: uint32
      required:
        - Value
      x-AnyInclusiveFlags:
        - RequiresOptionalValueSupport
  responses:
    GetMatchmakingQueueResult:
      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/GetMatchmakingQueueResult'
    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 Queue](/services/playfab/api-references/rest/multiplayer/matchmaking-admin/get-matchmaking-queue.md)
- [Configuring matchmaking queues](/services/playfab/multiplayer/matchmaking/config-queues.md)
- [Get Queue Statistics](/api-reference/matchmaking/get-queue-statistics.md)
- [Set Matchmaking Queue](/api-reference/matchmaking-admin/set-matchmaking-queue.md)
- [List Matchmaking Queues](/api-reference/matchmaking-admin/list-matchmaking-queues.md)
