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

# List Membership Opportunities

> Lists all outstanding invitations and group applications for an entity



## OpenAPI

````yaml /services/playfab/api-references/rest/groups/groups.openapi.json post /Group/ListMembershipOpportunities
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Groups API
  description: >-
    The Groups API is designed for any permanent or semi-permanent collections
    of Entities (players, or non-players). If you want to make
    Guilds/Clans/Corporations/etc., then you should use groups. Groups can also
    be used to make chatrooms, parties, or any other persistent collection of
    entities.
  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: Groups
    description: Groups Management APIs
paths:
  /Group/ListMembershipOpportunities:
    post:
      tags:
        - Groups
      summary: List Membership Opportunities
      description: Lists all outstanding invitations and group applications for an entity
      operationId: ListMembershipOpportunities
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListMembershipOpportunitiesRequest'
        description: >-
          Lists all outstanding group applications and invitations for an
          entity. Anyone may call this for any entity, but data will only be
          returned for the entity or a parent of that entity. To list
          invitations or applications for a group to check if a player is trying
          to join, use ListGroupInvitations and ListGroupApplications.
      responses:
        '200':
          $ref: '#/components/responses/ListMembershipOpportunitiesResponse'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - EntityToken: []
components:
  schemas:
    ListMembershipOpportunitiesRequest:
      description: >-
        Lists all outstanding group applications and invitations for an entity.
        Anyone may call this for any entity, but data will only be returned for
        the entity or a parent of that entity. To list invitations or
        applications for a group to check if a player is trying to join, use
        ListGroupInvitations and ListGroupApplications.
      type: object
      properties:
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: >-
            The optional entity to perform this action on. Defaults to the
            currently logged in entity.
      example: {}
    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
    ListMembershipOpportunitiesResponse:
      type: object
      properties:
        Applications:
          description: The requested list of group applications.
          type: array
          items:
            $ref: '#/components/schemas/GroupApplication'
          x-isclass: true
        Invitations:
          description: The requested list of group invitations.
          type: array
          items:
            $ref: '#/components/schemas/GroupInvitation'
          x-isclass: true
      example:
        Invitations:
          - InvitedEntity:
              Key:
                Id: '90901000'
                Type: title_player_account
                TypeString: title_player_account
              Lineage:
                master_player_account:
                  Id: 800DED92
                  Type: master_player_account
                  TypeString: master_player_account
            Group:
              Id: ABC1234ABC
            InvitedByEntity:
              Key:
                Id: 9023AFF3
                Type: title_player_account
                TypeString: title_player_account
              Lineage:
                master_player_account:
                  Id: 366AD424
                  Type: master_player_account
                  TypeString: master_player_account
            RoleId: awesomepeople
            Expires: '2017-12-31T11:59:59'
          - InvitedEntity:
              Key:
                Id: '90901000'
                Type: title_player_account
                TypeString: title_player_account
              Lineage:
                master_player_account:
                  Id: 800DED92
                  Type: master_player_account
                  TypeString: master_player_account
            Group:
              Id: ABC1234ABC
            InvitedByEntity:
              Key:
                Id: 9023AFF3
                Type: title_player_account
                TypeString: title_player_account
              Lineage:
                master_player_account:
                  Id: 366AD424
                  Type: master_player_account
                  TypeString: master_player_account
            RoleId: members
            Expires: '2017-12-31T11:59:59'
        Applications:
          - Group:
              Id: ABC1234ABC
            Entity:
              Key:
                Id: '90901000'
                Type: title_player_account
                TypeString: title_player_account
              Lineage:
                master_player_account:
                  Id: 800DED92
                  Type: master_player_account
                  TypeString: master_player_account
            Expires: '2017-12-31T11:59:59'
    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
    GroupApplication:
      description: Describes an application to join a group
      type: object
      properties:
        Entity:
          allOf:
            - $ref: '#/components/schemas/EntityWithLineage'
          description: Type of entity that requested membership
        Expires:
          description: When the application to join will expire and be deleted
          type: string
        Group:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: ID of the group that the entity requesting membership to
      required:
        - Expires
    GroupInvitation:
      description: Describes an invitation to a group.
      type: object
      properties:
        Expires:
          description: When the invitation will expire and be deleted
          type: string
        Group:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The group that the entity invited to
        InvitedByEntity:
          allOf:
            - $ref: '#/components/schemas/EntityWithLineage'
          description: The entity that created the invitation
        InvitedEntity:
          allOf:
            - $ref: '#/components/schemas/EntityWithLineage'
          description: The entity that is invited
        RoleId:
          description: ID of the role in the group to assign the user to.
          type: string
      required:
        - Expires
      example:
        InvitedEntity:
          Key:
            Id: '90901000'
            Type: title_player_account
            TypeString: title_player_account
          Lineage:
            master_player_account:
              Id: 800DED92
              Type: master_player_account
              TypeString: master_player_account
        Group:
          Id: ABC1234ABC
        InvitedByEntity:
          Key:
            Id: 9023AFF3
            Type: title_player_account
            TypeString: title_player_account
          Lineage:
            master_player_account:
              Id: 366AD424
              Type: master_player_account
              TypeString: master_player_account
        RoleId: awesomepeople
        Expires: '2017-12-31T11:59:59'
    EntityWithLineage:
      description: >-
        Entity wrapper class that contains the entity key and the entities that
        make up the lineage of the entity.
      type: object
      properties:
        Key:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: The entity key for the specified entity
        Lineage:
          allOf:
            - $ref: '#/components/schemas/EntityKey'
          description: >-
            Dictionary of entity keys for related entities. Dictionary key is
            entity type.
  responses:
    ListMembershipOpportunitiesResponse:
      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/ListMembershipOpportunitiesResponse'
            example:
              code: 200
              status: OK
              data:
                Invitations:
                  - InvitedEntity:
                      Key:
                        Id: '90901000'
                        Type: title_player_account
                        TypeString: title_player_account
                      Lineage:
                        master_player_account:
                          Id: 800DED92
                          Type: master_player_account
                          TypeString: master_player_account
                    Group:
                      Id: ABC1234ABC
                    InvitedByEntity:
                      Key:
                        Id: 9023AFF3
                        Type: title_player_account
                        TypeString: title_player_account
                      Lineage:
                        master_player_account:
                          Id: 366AD424
                          Type: master_player_account
                          TypeString: master_player_account
                    RoleId: awesomepeople
                    Expires: '2017-12-31T11:59:59'
                  - InvitedEntity:
                      Key:
                        Id: '90901000'
                        Type: title_player_account
                        TypeString: title_player_account
                      Lineage:
                        master_player_account:
                          Id: 800DED92
                          Type: master_player_account
                          TypeString: master_player_account
                    Group:
                      Id: ABC1234ABC
                    InvitedByEntity:
                      Key:
                        Id: 9023AFF3
                        Type: title_player_account
                        TypeString: title_player_account
                      Lineage:
                        master_player_account:
                          Id: 366AD424
                          Type: master_player_account
                          TypeString: master_player_account
                    RoleId: members
                    Expires: '2017-12-31T11:59:59'
                Applications:
                  - Group:
                      Id: ABC1234ABC
                    Entity:
                      Key:
                        Id: '90901000'
                        Type: title_player_account
                        TypeString: title_player_account
                      Lineage:
                        master_player_account:
                          Id: 800DED92
                          Type: master_player_account
                          TypeString: master_player_account
                    Expires: '2017-12-31T11:59:59'
    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

- [List Membership Opportunities](/services/playfab/api-references/rest/groups/groups/list-membership-opportunities.md)
- [PFGroupsListMembershipOpportunitiesResponse](/services/playfab/api-references/c/pfgroupstypes/structs/pfgroupslistmembershipopportunitiesresponse.md)
- [PFGroupsListMembershipOpportunitiesRequest](/services/playfab/api-references/c/pfgroupstypes/structs/pfgroupslistmembershipopportunitiesrequest.md)
- [PFGroupsListMembershipOpportunitiesAsync](/services/playfab/api-references/c/pfgroups/functions/pfgroupslistmembershipopportunitiesasync.md)
- [PFGroupsListMembershipOpportunitiesGetResult](/services/playfab/api-references/c/pfgroups/functions/pfgroupslistmembershipopportunitiesgetresult.md)
