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

# List Code Scan Profiles (Devin API)

> List the Devin code scan profiles available to an enterprise, including org-owned and account-shared discover and ingest profiles

## Permissions

Requires a [service user](/api-reference/v3/service-users/members-service-users) or [personal access token](/api-reference/personal-access-tokens) with the `ViewAccountCodeScans` permission at the enterprise level.

## Behavior

Returns profile summaries (without guidance text) newest first, including both org-owned profiles and profiles shared account-wide (`org_id` is `null` for shared profiles). Each summary includes the profile's `mode` (`discover` or `ingest`) and `scan_type`, which determine whether it can be passed to [Start Code Scan](/api-reference/v3/code-scans/enterprise-code-scans-start) or [Start Ingestion Scan](/api-reference/v3/code-scans/enterprise-code-scans-start-ingestion).

Optionally filter by `org_ids`; results are paginated with an opaque cursor (`after` / `first`). Use [Get Code Scan Profile](/api-reference/v3/code-scans/enterprise-code-scans-profile) to read a profile's full guidance. The organization-scoped equivalent is [List Code Scan Profiles (Organization)](/api-reference/v3/code-scans/organizations-code-scans-profiles).


## OpenAPI

````yaml v3-openapi.yaml GET /v3/enterprise/code-scans/profiles
openapi: 3.1.0
info:
  description: Devin v3 API with Service User authentication and RBAC
  title: Devin API v3
  version: 3.0.0
servers: []
security:
  - bearerAuth: []
paths:
  /v3/enterprise/code-scans/profiles:
    get:
      tags:
        - code-scans
      summary: List Code Scan Profiles
      description: >-
        List code scan profiles for the enterprise account.


        Returns profile summaries (without guidance) newest first, including
        both

        org-owned and account-shared profiles. Optionally filter by ``org_ids``;

        results are paginated with an opaque cursor (``after`` / ``first``).
      operationId: handle_list_code_scan_profiles_v3_enterprise_code_scans_profiles_get
      parameters:
        - in: query
          name: after
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: After
        - in: query
          name: first
          required: false
          schema:
            default: 100
            maximum: 200
            minimum: 1
            title: First
            type: integer
        - description: >-
            Only return profiles visible to these organizations. Defaults to all
            organizations in the account.
          in: query
          name: org_ids
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: >-
              Only return profiles visible to these organizations. Defaults to
              all organizations in the account.
            title: Org Ids
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PaginatedResponse_CodeScanProfileSummaryResponse_
          description: Successful Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Not Found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Unprocessable Content
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Too Many Requests
components:
  schemas:
    PaginatedResponse_CodeScanProfileSummaryResponse_:
      properties:
        end_cursor:
          anyOf:
            - type: string
            - type: 'null'
          description: Cursor to fetch the next page, or None if this is the last page.
          title: End Cursor
        has_next_page:
          default: false
          description: Whether there are more items available after this page.
          title: Has Next Page
          type: boolean
        items:
          items:
            $ref: '#/components/schemas/CodeScanProfileSummaryResponse'
          title: Items
          type: array
        total:
          anyOf:
            - type: integer
            - type: 'null'
          description: Optional total count (can be omitted for performance).
          title: Total
      required:
        - items
      title: PaginatedResponse[CodeScanProfileSummaryResponse]
      type: object
    ProblemDetail:
      description: >-
        RFC 9457 application/problem+json error body for the v3 API.


        detail is retained from the legacy {"detail": ...} body for back-compat;
        the

        other members are additive. errors carries field-level validation
        failures

        (422 only).
      properties:
        detail:
          anyOf:
            - type: string
            - type: 'null'
          description: A human-readable explanation specific to this occurrence.
          title: Detail
        errors:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          description: Field-level validation errors (422 responses only).
          title: Errors
        instance:
          anyOf:
            - type: string
            - type: 'null'
          description: A URI reference (the request path) for this occurrence.
          title: Instance
        status:
          description: The HTTP status code.
          title: Status
          type: integer
        title:
          description: A short, human-readable summary of the problem type.
          title: Title
          type: string
        type:
          default: about:blank
          description: A URI reference identifying the problem type.
          title: Type
          type: string
      required:
        - title
        - status
      title: ProblemDetail
      type: object
    CodeScanProfileSummaryResponse:
      description: Summary of a code scan profile, without its guidance.
      properties:
        created_at:
          description: When the profile was created (unix seconds).
          title: Created At
          type: integer
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: Description of the profile, if any.
          title: Description
        mode:
          description: 'Profile mode: discover or ingest.'
          enum:
            - discover
            - ingest
          title: Mode
          type: string
        name:
          description: Name of the profile.
          title: Name
          type: string
        org_id:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Organization that owns the profile. Null when the profile is shared
            account-wide.
          title: Org Id
        profile_id:
          description: Unique identifier for the profile.
          title: Profile Id
          type: string
        scan_type:
          description: Type of scan the profile configures.
          enum:
            - security
            - performance
            - db-queries
            - test-coverage
            - dead-code
            - code-quality
            - telemetry
            - accessibility
            - general
            - migration-docs
          title: Scan Type
          type: string
        visibility:
          description: >-
            Whether the profile is owned by a single organization or shared
            across the whole account.
          enum:
            - org
            - account
          title: Visibility
          type: string
      required:
        - profile_id
        - name
        - description
        - visibility
        - org_id
        - scan_type
        - mode
        - created_at
      title: CodeScanProfileSummaryResponse
      type: object
  securitySchemes:
    bearerAuth:
      description: 'Service User credential (prefix: cog_)'
      scheme: bearer
      type: http

````