Box

Box Group Memberships API

Group memberships signify that a user is a part of the group.

Documentation

📖
Documentation
https://developer.box.com/reference/get-authorize
📖
Documentation
https://developer.box.com/reference/post-oauth2-token
📖
Documentation
https://developer.box.com/reference/post-files-id-copy
📖
Documentation
https://developer.box.com/reference/post-file-requests-id-copy
📖
Documentation
https://developer.box.com/reference/post-folders-id-copy
📖
Documentation
https://developer.box.com/reference/post-folder-locks
📖
Documentation
https://developer.box.com/reference/post-metadata-templates-schema
📖
Documentation
https://developer.box.com/reference/post-metadata-cascade-policies
📖
Documentation
https://developer.box.com/reference/post-metadata-queries-execute-read
📖
Documentation
https://developer.box.com/reference/post-comments
📖
Documentation
https://developer.box.com/reference/post-collaborations
📖
Documentation
https://developer.box.com/reference/post-tasks
📖
Documentation
https://developer.box.com/reference/post-task-assignments
📖
Documentation
https://developer.box.com/reference/put-files-id--add-shared-link
📖
Documentation
https://developer.box.com/reference/put-folders-id--add-shared-link
📖
Documentation
https://developer.box.com/reference/post-web-links
📖
Documentation
https://developer.box.com/reference/put-web-links-id--add-shared-link
📖
Documentation
https://developer.box.com/reference/post-users
📖
Documentation
https://developer.box.com/reference/post-invites
📖
Documentation
https://developer.box.com/reference/post-groups
📖
Documentation
https://developer.box.com/reference/post-group-memberships
📖
Documentation
https://developer.box.com/reference/post-webhooks
📖
Documentation
https://developer.box.com/reference/post-files-id-metadata-global-boxSkillsCards
📖
Documentation
https://developer.box.com/reference/options-events
📖
Documentation
https://developer.box.com/reference/get-collections-id
📖
Documentation
https://developer.box.com/reference/get-recent-items
📖
Documentation
https://developer.box.com/reference/post-retention-policies
📖
Documentation
https://developer.box.com/reference/post-retention-policy-assignments
📖
Documentation
https://developer.box.com/reference/post-legal-hold-policies
📖
Documentation
https://developer.box.com/reference/post-legal-hold-policy-assignments
📖
Documentation
https://developer.box.com/reference/get-file-version-retentions-id
📖
Documentation
https://developer.box.com/reference/get-file-version-legal-holds-id
📖
Documentation
https://developer.box.com/reference/post-shield-information-barriers-change-status
📖
Documentation
https://developer.box.com/reference/post-shield-information-barrier-reports
📖
Documentation
https://developer.box.com/reference/post-shield-information-barrier-segments
📖
Documentation
https://developer.box.com/reference/post-shield-information-barrier-segment-members
📖
Documentation
https://developer.box.com/reference/post-shield-information-barrier-segment-restrictions
📖
Documentation
https://developer.box.com/reference/get-device-pinners-id
📖
Documentation
https://developer.box.com/reference/post-terms-of-services
📖
Documentation
https://developer.box.com/reference/post-terms-of-service-user-statuses
📖
Documentation
https://developer.box.com/reference/post-collaboration-whitelist-entries
📖
Documentation
https://developer.box.com/

Specifications

Other Resources

OpenAPI Specification

box-group-memberships-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: "1.0"
  title: Box Authorize Authorization Group Memberships API
  description: Needs a description.
tags:
- name: Group Memberships
  description: 'Group memberships signify that

    a user is a part of the group.'
  x-box-tag: memberships
paths:
  /users/{user_id}/memberships:
    get:
      operationId: get_users_id_memberships
      summary: Box List user's groups
      x-box-tag: memberships
      tags:
      - Group Memberships
      description: 'Retrieves all the groups for a user. Only members of this

        group or users with admin-level permissions will be able to

        use this API.'
      parameters:
      - name: user_id
        description: The ID of the user.
        example: '12345'
        in: path
        required: true
        schema:
          type: string
      - name: limit
        description: The maximum number of items to return per page.
        in: query
        required: false
        example: 1000
        schema:
          type: integer
          format: int64
          maximum: 1000
      - name: offset
        description: 'The offset of the item at which to begin the response.


          Queries with offset parameter value

          exceeding 10000 will be rejected

          with a 400 response.'
        in: query
        required: false
        example: 1000
        schema:
          type: integer
          format: int64
          default: 0
      responses:
        '200':
          description: 'Returns a collection of membership objects. If there are no

            memberships, an empty collection will be returned.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMemberships'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
  /groups/{group_id}/memberships:
    get:
      operationId: get_groups_id_memberships
      summary: Box List members of group
      x-box-tag: memberships
      tags:
      - Group Memberships
      description: 'Retrieves all the members for a group. Only members of this

        group or users with admin-level permissions will be able to

        use this API.'
      parameters:
      - name: group_id
        description: The ID of the group.
        example: '57645'
        in: path
        required: true
        schema:
          type: string
      - name: limit
        description: The maximum number of items to return per page.
        in: query
        required: false
        example: 1000
        schema:
          type: integer
          format: int64
          maximum: 1000
      - name: offset
        description: 'The offset of the item at which to begin the response.


          Queries with offset parameter value

          exceeding 10000 will be rejected

          with a 400 response.'
        in: query
        required: false
        example: 1000
        schema:
          type: integer
          format: int64
          default: 0
      responses:
        '200':
          description: 'Returns a collection of membership objects. If there are no

            memberships, an empty collection will be returned.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMemberships'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
  /group_memberships:
    post:
      operationId: post_group_memberships
      summary: Box Add user to group
      tags:
      - Group Memberships
      x-box-tag: memberships
      description: 'Creates a group membership. Only users with

        admin-level permissions will be able to use this API.'
      parameters:
      - name: fields
        description: 'A comma-separated list of attributes to include in the

          response. This can be used to request fields that are

          not normally returned in a standard response.


          Be aware that specifying this parameter will have the

          effect that none of the standard fields are returned in

          the response unless explicitly specified, instead only

          fields for the mini representation are returned, additional

          to the fields requested.'
        in: query
        example:
        - id
        - type
        - name
        required: false
        explode: false
        schema:
          type: array
          items:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - user
              - group
              properties:
                user:
                  type: object
                  description: The user to add to the group.
                  required:
                  - id
                  properties:
                    id:
                      type: string
                      description: The ID of the user to add to the group
                      example: '1434325'
                group:
                  type: object
                  description: The group to add the user to.
                  required:
                  - id
                  properties:
                    id:
                      type: string
                      description: The ID of the group to add the user to
                      example: '4545523'
                role:
                  type: string
                  example: member
                  description: The role of the user in the group.
                  enum:
                  - member
                  - admin
                configurable_permissions:
                  type: object
                  example:
                    can_run_reports: true
                  description: 'Custom configuration for the permissions an admin

                    if a group will receive. This option has no effect

                    on members with a role of `member`.


                    Setting these permissions overwrites the default

                    access levels of an admin.


                    Specifying a value of "null" for this object will disable

                    all configurable permissions. Specifying permissions will set

                    them accordingly, omitted permissions will be enabled by default.'
                  additionalProperties:
                    type: boolean
                    description: A key value pair of custom permissions.
                    example: true
                    x-box-example-key: can_run_reports
      responses:
        '201':
          description: Returns a new group membership object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMembership'
        '403':
          description: 'Returns an error when the user cannot be added

            to a group.


            * `forbidden_by_policy`: Adding a user

            to a group is forbidden due to information

            barrier restrictions.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
  /group_memberships/{group_membership_id}:
    get:
      operationId: get_group_memberships_id
      summary: Box Get group membership
      tags:
      - Group Memberships
      x-box-tag: memberships
      description: 'Retrieves a specific group membership. Only admins of this

        group or users with admin-level permissions will be able to

        use this API.'
      parameters:
      - name: group_membership_id
        description: The ID of the group membership.
        example: '434534'
        in: path
        required: true
        schema:
          type: string
      - name: fields
        description: 'A comma-separated list of attributes to include in the

          response. This can be used to request fields that are

          not normally returned in a standard response.


          Be aware that specifying this parameter will have the

          effect that none of the standard fields are returned in

          the response unless explicitly specified, instead only

          fields for the mini representation are returned, additional

          to the fields requested.'
        in: query
        example:
        - id
        - type
        - name
        required: false
        explode: false
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: Returns the group membership object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMembership'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
    put:
      operationId: put_group_memberships_id
      summary: Box Update group membership
      tags:
      - Group Memberships
      x-box-tag: memberships
      description: 'Updates a user''s group membership. Only admins of this

        group or users with admin-level permissions will be able to

        use this API.'
      parameters:
      - name: group_membership_id
        description: The ID of the group membership.
        example: '434534'
        in: path
        required: true
        schema:
          type: string
      - name: fields
        description: 'A comma-separated list of attributes to include in the

          response. This can be used to request fields that are

          not normally returned in a standard response.


          Be aware that specifying this parameter will have the

          effect that none of the standard fields are returned in

          the response unless explicitly specified, instead only

          fields for the mini representation are returned, additional

          to the fields requested.'
        in: query
        example:
        - id
        - type
        - name
        required: false
        explode: false
        schema:
          type: array
          items:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                role:
                  type: string
                  example: member
                  description: The role of the user in the group.
                  enum:
                  - member
                  - admin
                configurable_permissions:
                  type: object
                  example:
                    can_run_reports: true
                  description: 'Custom configuration for the permissions an admin

                    if a group will receive. This option has no effect

                    on members with a role of `member`.


                    Setting these permissions overwrites the default

                    access levels of an admin.


                    Specifying a value of "null" for this object will disable

                    all configurable permissions. Specifying permissions will set

                    them accordingly, omitted permissions will be enabled by default.'
                  additionalProperties:
                    type: boolean
                    description: A key value pair of custom permissions.
                    example: true
                    x-box-example-key: can_run_reports
      responses:
        '200':
          description: Returns a new group membership object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupMembership'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
    delete:
      operationId: delete_group_memberships_id
      summary: Box Remove user from group
      tags:
      - Group Memberships
      x-box-tag: memberships
      description: 'Deletes a specific group membership. Only admins of this

        group or users with admin-level permissions will be able to

        use this API.'
      parameters:
      - name: group_membership_id
        description: The ID of the group membership.
        example: '434534'
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: 'A blank response is returned if the membership was

            successfully deleted.'
        default:
          description: An unexpected client error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientError'
components:
  schemas:
    GroupMemberships:
      title: Group memberships
      type: object
      x-box-resource-id: group_memberships
      x-box-tag: memberships
      description: A list of group memberships.
      allOf:
      - type: object
        description: The part of an API response that describes pagination
        properties:
          total_count:
            description: 'One greater than the offset of the last entry in the entire collection.

              The total number of entries in the collection may be less than

              `total_count`.


              This field is only returned for calls that use offset-based pagination.

              For marker-based paginated APIs, this field will be omitted.'
            example: 5000
            type: integer
            format: int64
          limit:
            description: 'The limit that was used for these entries. This will be the same as the

              `limit` query parameter unless that value exceeded the maximum value

              allowed. The maximum value varies by API.'
            example: 1000
            type: integer
            format: int64
          offset:
            description: 'The 0-based offset of the first entry in this set. This will be the same

              as the `offset` query parameter.


              This field is only returned for calls that use offset-based pagination.

              For marker-based paginated APIs, this field will be omitted.'
            example: 2000
            type: integer
            format: int64
          order:
            description: 'The order by which items are returned.


              This field is only returned for calls that use offset-based pagination.

              For marker-based paginated APIs, this field will be omitted.'
            type: array
            items:
              type: object
              description: The order in which a pagination is ordered
              properties:
                by:
                  description: The field to order by
                  example: type
                  type: string
                direction:
                  type: string
                  description: The direction to order by, either ascending or descending
                  example: ASC
                  enum:
                  - ASC
                  - DESC
      - properties:
          entries:
            type: array
            description: A list of group memberships
            items:
              $ref: '#/components/schemas/GroupMembership'
    Group--Base:
      title: Group (Base)
      type: object
      x-box-resource-id: group--base
      x-box-sanitized: true
      x-box-tag: groups
      x-box-variants:
      - base
      - mini
      - standard
      - full
      x-box-variant: base
      description: A base representation of a group.
      required:
      - id
      - type
      properties:
        id:
          type: string
          description: The unique identifier for this object
          example: '11446498'
        type:
          type: string
          description: '`group`'
          example: group
          enum:
          - group
    User--Base:
      title: User (Base)
      type: object
      x-box-resource-id: user--base
      x-box-tag: users
      x-box-variants:
      - base
      - mini
      - standard
      - full
      x-box-variant: base
      description: 'A mini representation of a user, used when

        nested within another resource.'
      required:
      - type
      - id
      properties:
        id:
          type: string
          description: The unique identifier for this user
          example: '11446498'
        type:
          type: string
          description: '`user`'
          example: user
          nullable: false
          enum:
          - user
    Group--Mini:
      title: Group (Mini)
      type: object
      x-box-resource-id: group--mini
      x-box-variant: mini
      description: 'Mini representation of a group, including id and name of

        group.'
      allOf:
      - $ref: '#/components/schemas/Group--Base'
      - properties:
          name:
            type: string
            description: The name of the group
            example: Support
          group_type:
            type: string
            description: The type of the group.
            example: managed_group
            enum:
            - managed_group
            - all_users_group
    User--Mini:
      title: User (Mini)
      type: object
      x-box-resource-id: user--mini
      x-box-variant: mini
      description: 'A mini representation of a user, as can be returned when nested within other

        resources.'
      allOf:
      - $ref: '#/components/schemas/User--Base'
      - properties:
          name:
            type: string
            description: The display name of this user
            example: Aaron Levie
            maxLength: 50
            nullable: false
          login:
            type: string
            format: email
            description: The primary email address of this user
            example: ceo@example.com
            nullable: false
    GroupMembership:
      title: Group membership
      type: object
      x-box-resource-id: group_membership
      x-box-tag: memberships
      description: 'Membership is used to signify that a user is part of a

        group.'
      properties:
        id:
          type: string
          description: The unique identifier for this group membership
          example: '11446498'
        type:
          type: string
          description: '`group_membership`'
          example: group_membership
          enum:
          - group_membership
        user:
          allOf:
          - $ref: '#/components/schemas/User--Mini'
          - description: The user that the membership applies to
        group:
          allOf:
          - $ref: '#/components/schemas/Group--Mini'
          - description: The group that the membership applies to
        role:
          type: string
          example: member
          description: The role of the user in the group.
          enum:
          - member
          - admin
        created_at:
          type: string
          format: date-time
          description: The time this membership was created.
          example: '2012-12-12T10:53:43-08:00'
        modified_at:
          type: string
          format: date-time
          description: The time this membership was last modified.
          example: '2012-12-12T10:53:43-08:00'
    ClientError:
      title: Client error
      type: object
      x-box-resource-id: client_error
      description: A generic error
      properties:
        type:
          description: error
          example: error
          type: string
          enum:
          - error
          nullable: false
        status:
          description: The HTTP status of the response.
          example: 400
          type: integer
          format: int32
          nullable: false
        code:
          description: A Box-specific error code
          example: item_name_invalid
          type: string
          enum:
          - created
          - accepted
          - no_content
          - redirect
          - not_modified
          - bad_request
          - unauthorized
          - forbidden
          - not_found
          - method_not_allowed
          - conflict
          - precondition_failed
          - too_many_requests
          - internal_server_error
          - unavailable
          - item_name_invalid
          - insufficient_scope
        message:
          description: A short message describing the error.
          example: Method Not Allowed
          type: string
          nullable: false
        context_info:
          description: 'A free-form object that contains additional context

            about the error. The possible fields are defined on

            a per-endpoint basis. `message` is only one example.'
          type: object
          nullable: true
          properties:
            message:
              type: string
              description: More details on the error.
              example: Something went wrong.
        help_url:
          description: A URL that links to more information about why this error occurred.
          example: https://developer.box.com/guides/api-calls/permissions-and-errors/common-errors/
          type: string
          nullable: false
        request_id:
          description: 'A unique identifier for this response, which can be used

            when contacting Box support.'
          type: string
          example: abcdef123456
          nullable: false