get:
  operationId: listAccessProfiles
  tags:
    - Access Profiles
  summary: List Access Profiles
  description: >-
    This API returns a list of Access Profiles.
    

    A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to
    call this API.
  parameters:
    - in: query
      name: for-subadmin
      schema:
        type: string
      description: >-
        If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN or
        SOURCE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**,
        which is shorthand for the calling Identity's ID.


        A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not
        a subadmin.
      example: 8c190e6787aa4ed9a90bd9d5344523fb
      required: false
    - $ref: '../../v3/parameters/limit50.yaml'
    - $ref: '../../v3/parameters/offset.yaml'
    - $ref: '../../v3/parameters/count.yaml'
    - in: query
      name: filters
      schema:
        type: string
      description: >-
        Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results)


        Filtering is supported for the following fields and operators:
        

        **id**: *eq, in*


        **name**: *eq, sw*


        **created, modified**: *gt, lt, ge, le*


        **owner.id**: *eq, in*


        **requestable**: *eq*


        **source.id**: *eq, in*
      example: name eq "SailPoint Support"
      required: false
    - in: query
      name: sorters
      schema:
        type: string
        format: comma-separated
      description: >-
        Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results)


        Sorting is supported for the following fields: **name, created, modified**
      example: name,-modified
      required: false
    - in: query
      name: for-segment-ids
      schema:
        type: string
        format: comma-separated
      description: >-
        If present and not empty, additionally filters Access Profiles to those which are assigned to the Segment(s)
        with the specified IDs.


        If segmentation is currently unavailable, specifying this parameter results in an error.
      example: 0b5c9f25-83c6-4762-9073-e38f7bb2ae26,2e8d8180-24bc-4d21-91c6-7affdb473b0d
      required: false
    - in: query
      name: include-unsegmented
      schema:
        type: boolean
        default: true
      description: >-
        Whether or not the response list should contain unsegmented Access Profiles.
        If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error.
      example: false
      required: false
  responses:
    '200':
      description: List of Access Profiles
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '../../v3/schemas/access/AccessProfile.yaml'
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:access-profile:read]
post:
  operationId: createAccessProfile
  tags:
    - Access Profiles
  summary: Create an Access Profile
  description: >-
    This API creates an Access Profile.
    

    A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to
    call this API. In addition, a token with only ROLE_SUBADMIN or SOURCE_SUBADMIN authority must be associated with the
    Access Profile's Source.
  requestBody:
    required: true
    content:
      application/json:
        schema:
          $ref: '../../v3/schemas/access/AccessProfile.yaml'
  responses:
    '201':
      description: Access Profile created
      content:
        application/json:
          schema:
            $ref: '../../v3/schemas/access/AccessProfile.yaml'
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:access-profile:manage]
