> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gominerva.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List profiles

> The **GET** method on the resource group will list profiles that have been previously created in the tenant of the requester. This can be used to extract a list of profiles and sync them back to an internal system, or to build integrations with internal systems to fetch profiles according to certain filters.



## OpenAPI

````yaml /api-reference/profiles.json get /profiles
openapi: 3.1.0
info:
  title: Profiles API
  version: 1.0.0
  description: >-
    Customer-facing API endpoints for managing screening profiles and updating
    potential match review workflows.
servers:
  - description: The production API server for Minerva AI for managing screening profiles
    url: https://api.gominerva.com/clm/v1
security: []
tags:
  - name: Profile Management
    description: Create, list, update, and comment on screening workflow profiles.
  - name: Potential Matches
    description: Update review workflow state for potential matches returned by searches.
externalDocs:
  description: ''
  url: ''
paths:
  /profiles:
    get:
      tags:
        - Profile Management
      summary: List profiles
      description: >-
        The **GET** method on the resource group will list profiles that have
        been previously created in the tenant of the requester. This can be used
        to extract a list of profiles and sync them back to an internal system,
        or to build integrations with internal systems to fetch profiles
        according to certain filters.
      parameters:
        - description: The current page cursor to fetch, starting at 1
          in: query
          name: page
          schema:
            default: 1
            type: integer
        - description: The number of records to fetch per page, max 100
          in: query
          name: perPage
          schema:
            default: 20
            type: integer
        - description: >-
            Filter by partial matches across profile name, email, and external
            ID.
          in: query
          name: query
          schema:
            type: string
        - description: >-
            Filter by profiles whose externalId matches the supplied value
            exactly, ignoring letter case. Partial values do not match; use
            `query`, which searches name, email, and external ID, to match
            external IDs partially. The ID is supplied during the onboarding or
            profile creation API request by an external system such as a custom
            admin system or CRM.
          in: query
          name: external_id
          schema:
            type: string
        - description: Filter by partial matches to the full name.
          in: query
          name: name
          schema:
            type: string
        - description: Filter by partial matches to the profile's email address.
          in: query
          name: email
          schema:
            type: string
        - description: Filter by partial matches to address line 1.
          in: query
          name: address1
          schema:
            type: string
        - description: Filter by partial matches to address line 2.
          in: query
          name: address2
          schema:
            type: string
        - description: Filter by profiles with a certain date of birth, in \
          in: query
          name: date_of_birth
          schema:
            type: string
        - description: >-
            Filter by profiles with a certain sex, as reported on their
            onboarding documentation. Should be \
          in: query
          name: sex
          schema:
            type: string
        - description: Filter by partial matches to the profile's known city of residence.
          in: query
          name: address_city
          schema:
            type: string
        - description: >-
            Filter by partial matches to the profiles' known state/province of
            residence.
          in: query
          name: address_state
          schema:
            type: string
        - description: >-
            Filter by partial matches to the profiles' known country of
            residence.
          in: query
          name: country
          schema:
            type: string
        - description: Filter by partial matches to a country of citizenship.
          in: query
          name: nationality
          schema:
            type: string
        - description: Filter by tasks (comma-separated)
          in: query
          name: tasks
          schema:
            type: string
        - description: Filter by profile kind
          in: query
          name: kind
          schema:
            type: string
        - description: 'Filter by profiles that are in a certain workflow status (example: \'
          in: query
          name: status
          schema:
            type: string
        - description: >-
            Filter by profiles based on archived status. Omit to show all
            profiles (default behaviour).
          in: query
          name: archived
          schema:
            type: string
        - description: 'Filter by profiles with certain flags (comma-separated). Example: \'
          in: query
          name: flag_names
          schema:
            type: string
        - description: Filter by last screened time start
          in: query
          name: last_screened_time_start
          schema:
            type: string
        - description: Filter by last screened time end
          in: query
          name: last_screened_time_end
          schema:
            type: string
        - description: Filter by monitored status
          in: query
          name: monitored
          schema:
            type: string
        - description: >-
            Filter by profiles assigned to any of the provided profile group
            IDs. Use comma-separated IDs for multiple groups.
          in: query
          name: profile_group_ids
          schema:
            type: string
          example: 665f0d4c2d2f7c2b2f2f2f31,665f0d4c2d2f7c2b2f2f2f32
        - description: >-
            The key to sort records by. This should match an existing key on the
            profile schema. Default: \
          in: query
          name: sort_key
          schema:
            default: createdAt
            type: string
        - description: The direction to sort. Should be \
          in: query
          name: sort_direction
          schema:
            default: desc
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/clm.ListProfilesResponse'
          description: Profiles listed successfully
      security:
        - ApiKeyAuth: []
components:
  schemas:
    clm.ListProfilesResponse:
      properties:
        msg:
          example: OK
          type: string
        result:
          properties:
            meta:
              $ref: '#/components/schemas/clm.PaginationMeta'
            profiles:
              items:
                $ref: '#/components/schemas/clm.ProfileListItemResponse'
              type: array
              uniqueItems: false
          type: object
        status:
          example: 200
          type: integer
      type: object
    clm.PaginationMeta:
      properties:
        currentPage:
          example: 1
          type: integer
        nextPage:
          example: 2
          type: integer
        perPage:
          example: 1
          type: integer
        prevPage:
          example: 0
          type: integer
        totalPages:
          example: 659
          type: integer
        totalRows:
          example: 659
          type: integer
      type: object
    clm.ProfileListItemResponse:
      properties:
        _v:
          example: 1
          type: integer
        address1:
          example: 1234 Fake St
          type: string
        address2:
          example: Apt 123
          type: string
        addressCity:
          example: Toronto
          type: string
        addressPostalCode:
          example: A1B2C3
          type: string
        addressState:
          example: 'ON'
          type: string
        allowlistUntil:
          example: 2024/08/15
          type: string
        archived:
          example: false
          type: boolean
        country:
          example: Canada
          type: string
        createdAt:
          example: '2024-08-06T20:02:12.876Z'
          type: string
        dateOfBirth:
          example: YYYY/MM/DD
          type: string
        email:
          example: john.smith@email.com
          type: string
        externalId:
          example: external-customer-id
          type: string
        firstName:
          example: John
          type: string
        flags:
          items:
            $ref: '#/components/schemas/clm.FlagListItemResponse'
          type: array
          uniqueItems: false
        id:
          example: 6501f2a5a8257eb952e041d4
          type: string
        kind:
          example: individual
          type: string
        lastName:
          example: Smith
          type: string
        lastScreenedTime:
          example: '2024-08-15T14:43:02.805Z'
          type: string
        monitored:
          example: monitored
          type: string
        nationality:
          example: Canada
          type: string
        occupation:
          example: ''
          type: string
        organization:
          example: ''
          type: string
        phone:
          example: ''
          type: string
        sex:
          example: M
          type: string
        status:
          example: potential_match
          type: string
        tenantId:
          example: ef637217-5fbf-4117-88f0-a9f1246ffe7f
          type: string
        updatedAt:
          example: '2024-08-15T14:43:02.805Z'
          type: string
        profileGroupIds:
          description: >-
            Workspace-scoped profile group IDs assigned to this profile for
            dynamic risk segmentation. A profile can belong to multiple groups.
          type: array
          items:
            type: string
          example:
            - 665f0d4c2d2f7c2b2f2f2f31
            - 665f0d4c2d2f7c2b2f2f2f32
      type: object
    clm.FlagListItemResponse:
      properties:
        count:
          example: 2
          type: integer
        kind:
          example: screeningPepMatch
          type: string
      type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        The Minerva API key used for this integration. Manage API keys in the
        Minerva dashboard under Administration > Developers.

````