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

# List files

> Lists internal files, externally connected files and folders across the workspace. Optional query parameters may be provided to filter results by object, record, storage provider or parent folder.

This endpoint is in beta. We will aim to avoid breaking changes, but small updates may be made as we roll out to more users.

Required scopes: `object_configuration:read`, `record_permission:read`, `file:read`.



## OpenAPI

````yaml https://api.attio.com/openapi/api get /v2/files
openapi: 3.1.0
info:
  title: Attio API
  version: 2.0.0
  contact:
    name: Attio Support
    email: support@attio.com
    url: https://attio.com/help
servers:
  - url: https://api.attio.com
    description: Production
security:
  - oauth2: []
tags:
  - name: Objects
    description: >-
      Objects are the core data models inside of Attio. They contain standard
      objects, such as
      [people](/rest-api/endpoint-reference/standard-objects/people/list-person-records),
      [companies](/rest-api/endpoint-reference/standard-objects/companies/list-company-records)
      or [deals](/docs/standard-objects-deals), and custom objects that are
      specific to your use-case. See our [objects and lists
      guide](/docs/objects-and-lists) for more information.
  - name: Object views
    description: Object views are saved table or board layouts for an object.
  - name: List views
    description: List views are saved table or board layouts for a list.
  - name: Attributes
    description: >-
      Attributes model properties of objects and lists. Some attributes, such as
      the `name` attribute on a person, are system-defined, while others are
      user-defined. Attributes are one of [many types](/docs/attribute-types)
      such as text, location or select. See our [objects and lists
      guide](/docs/objects-and-lists) for more information.
  - name: Records
    description: >-
      Records are individual instances of objects e.g. a specific
      [person](/rest-api/endpoint-reference/standard-objects/people/list-person-records)
      or
      [company](/rest-api/endpoint-reference/standard-objects/companies/list-company-records).
      See our [objects and lists guide](/docs/objects-and-lists) for more
      information.
  - name: SCIM groups
    description: >-
      SCIM groups represent Attio teams managed through the SCIM provisioning
      protocol.
  - name: SCIM schemas
    description: >-
      SCIM schemas describe the resource types supported by the SCIM service
      provider.
  - name: SCIM users
    description: >-
      SCIM users represent workspace members managed through the SCIM
      provisioning protocol.
  - name: Lists
    description: >-
      Lists are used to model a particular process. A list contains many records
      of a single object type, where each record is represented by an entry.
      Entries contain their own data from attributes defined on the list and
      also data from their parent record. See our [objects and lists
      guide](/docs/objects-and-lists) for more information.
  - name: Meta
    description: Meta endpoints are used to get information about the API token.
  - name: Entries
    description: >-
      Entries are elements in a list that reference a single parent record.
      Entries contain their own data from attributes defined on the list and
      also data from their parent record. See our [objects and lists
      guide](/docs/objects-and-lists) for more information.
  - name: Files
    description: >-
      Files are documents and folders linked to records, stored either in Attio
      or connected via external storage providers.
  - name: Workspace members
    description: >-
      Workspace members represent a user with access to a workspace. Workspace
      members are assigned roles that determine what they can do within the
      workspace.
  - name: Notes
    description: Notes are rich text documents that reference a single parent record.
  - name: Meetings
    description: >-
      Meetings are events synced from your calendar, added manually or added
      from third-party integrations.
  - name: Call recordings
    description: >-
      Call recordings store video, audio, transcript and speaker information for
      calls. They are linked to meetings.
  - name: Transcripts
    description: >-
      Transcripts contain the speech segments and speaker information for a call
      recording. They are linked to call recordings.
  - name: Tasks
    description: >-
      A task is a defined, actionable item with references to linked records and
      assigned workspace members.
  - name: Webhooks
    description: >-
      Webhooks allow you to listen for changes to data in Attio, for example
      when a record is updated.
  - name: Threads
    description: >-
      Threads are groups of
      [comments](/rest-api/endpoint-reference/comments/get-a-comment) on either
      a record or entry.
  - name: Comments
    description: >-
      Comments are messages on a
      [thread](/rest-api/endpoint-reference/threads/list-threads).
  - name: People
    description: >-
      People are one of the core objects inside of Attio. Person records can be
      added to lists and can be created automatically when syncing your mailbox.
  - name: Companies
    description: >-
      Companies are one of the core objects inside of Attio. Company records can
      be added to lists and can be created automatically when syncing your
      mailbox.
  - name: Users
    description: >-
      Users are an optional standard object that represents a user of your
      system. Users can belong to many workspaces.
  - name: Deals
    description: >-
      Deals are an optional standard object that represent a deal or
      opportunity.
  - name: Workspaces
    description: >-
      Workspaces are an optional standard object that represent a workspace or
      account in your system. Workspaces have many users and can be used to
      model a multi-tenant system. A company record can optionally have multiple
      workspaces.
paths:
  /v2/files:
    get:
      tags:
        - Files
      summary: List files
      description: >-
        Lists internal files, externally connected files and folders across the
        workspace. Optional query parameters may be provided to filter results
        by object, record, storage provider or parent folder.


        This endpoint is in beta. We will aim to avoid breaking changes, but
        small updates may be made as we roll out to more users.


        Required scopes: `object_configuration:read`, `record_permission:read`,
        `file:read`.
      parameters:
        - schema:
            type: string
            minLength: 1
            description: The object slug or ID.
          required: true
          name: object
          in: query
        - schema:
            type: string
            format: uuid
            description: Used to filter files to only those on a specific record.
          required: true
          name: record_id
          in: query
        - schema:
            type: string
            enum:
              - attio
              - dropbox
              - box
              - google-drive
              - microsoft-onedrive
            description: Filter results by storage provider.
          required: false
          name: storage_provider
          in: query
        - schema:
            type: string
            format: uuid
            description: >-
              Filter by parent folder ID. Each file entry has provided optioanl
              parent_folder_id that can be used to filter results by folder.
              When omitted, entries at all nesting levels are returned.
          required: false
          name: parent_folder_id
          in: query
        - schema:
            type: integer
            minimum: 1
            maximum: 200
            default: 50
            description: >-
              The maximum number of files to return. Must be between 1 and 200.
              Defaults to 50.
            example: 50
          required: false
          name: limit
          in: query
        - schema:
            type: string
            description: >-
              A pagination cursor used to fetch the next page of files.
              Responses with more files will include a cursor for you to use
              here. If not provided, the first page will be returned.
          required: false
          name: cursor
          in: query
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      oneOf:
                        - $ref: '#/components/schemas/file'
                        - $ref: '#/components/schemas/folder'
                        - $ref: '#/components/schemas/connected-file'
                        - $ref: '#/components/schemas/connected-folder'
                      discriminator:
                        propertyName: file_type
                        mapping:
                          file:
                            $ref: '#/components/schemas/file'
                          folder:
                            $ref: '#/components/schemas/folder'
                          connected-file:
                            $ref: '#/components/schemas/connected-file'
                          connected-folder:
                            $ref: '#/components/schemas/connected-folder'
                  pagination:
                    type: object
                    properties:
                      next_cursor:
                        type:
                          - string
                          - 'null'
                    required:
                      - next_cursor
                required:
                  - data
                  - pagination
                description: Success
      security:
        - oauth2:
            - object_configuration:read
            - record_permission:read
            - file:read
components:
  schemas:
    file:
      type: object
      properties:
        id:
          type: object
          properties:
            workspace_id:
              type: string
              format: uuid
              description: The ID of the workspace the file belongs to.
              example: 14beef7a-99f7-4534-a87e-70b564330a4c
            file_id:
              type: string
              format: uuid
              description: The ID of the file entry.
              example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          required:
            - workspace_id
            - file_id
        object_id:
          type: string
          format: uuid
          description: The ID of the object the record belongs to.
          example: 97052eb9-e65e-443f-a297-f2d9a4a7f795
        object_slug:
          type: string
          description: The slug of the object the record belongs to.
          example: people
        record_id:
          type: string
          format: uuid
          description: The ID of the record the file is linked to.
          example: bf071e1f-6035-429d-b874-d83ea64ea13b
        storage_provider:
          type: string
          enum:
            - attio
            - dropbox
            - box
            - google-drive
            - microsoft-onedrive
          description: The storage provider for this file entry.
          example: attio
        created_by_actor:
          type: object
          description: The actor that created this file entry.
          properties:
            id:
              type: string
              description: An ID to identify the actor.
              nullable: true
            type:
              type: string
              enum:
                - api-token
                - workspace-member
                - system
                - app
              nullable: true
              description: >-
                The type of actor. [Read more information on actor types
                here](/docs/actors).
          example:
            type: workspace-member
            id: 50cf242c-7fa3-4cad-87d0-75b1af71c57b
        created_at:
          type: string
          description: Timestamp representing when the file entry was created.
          example: '2023-01-01T15:00:00.000000000Z'
        file_type:
          type: string
          enum:
            - file
          description: The type of file entry.
        name:
          type: string
          description: The name of the file.
          example: document.pdf
        content_type:
          type:
            - string
            - 'null'
          description: The content type of the file.
          example: application/pdf
        content_size:
          type:
            - number
            - 'null'
          description: The size of the file in bytes.
          example: 1024
        parent_folder_id:
          type:
            - string
            - 'null'
          format: uuid
          description: The ID of the parent folder, or null if this is a top-level file.
      required:
        - id
        - object_id
        - object_slug
        - record_id
        - storage_provider
        - created_by_actor
        - created_at
        - file_type
        - name
        - content_type
        - content_size
        - parent_folder_id
      title: File
    folder:
      type: object
      properties:
        id:
          type: object
          properties:
            workspace_id:
              type: string
              format: uuid
              description: The ID of the workspace the file belongs to.
              example: 14beef7a-99f7-4534-a87e-70b564330a4c
            file_id:
              type: string
              format: uuid
              description: The ID of the file entry.
              example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          required:
            - workspace_id
            - file_id
        object_id:
          type: string
          format: uuid
          description: The ID of the object the record belongs to.
          example: 97052eb9-e65e-443f-a297-f2d9a4a7f795
        object_slug:
          type: string
          description: The slug of the object the record belongs to.
          example: people
        record_id:
          type: string
          format: uuid
          description: The ID of the record the file is linked to.
          example: bf071e1f-6035-429d-b874-d83ea64ea13b
        storage_provider:
          type: string
          enum:
            - attio
            - dropbox
            - box
            - google-drive
            - microsoft-onedrive
          description: The storage provider for this file entry.
          example: attio
        created_by_actor:
          type: object
          description: The actor that created this file entry.
          properties:
            id:
              type: string
              description: An ID to identify the actor.
              nullable: true
            type:
              type: string
              enum:
                - api-token
                - workspace-member
                - system
                - app
              nullable: true
              description: >-
                The type of actor. [Read more information on actor types
                here](/docs/actors).
          example:
            type: workspace-member
            id: 50cf242c-7fa3-4cad-87d0-75b1af71c57b
        created_at:
          type: string
          description: Timestamp representing when the file entry was created.
          example: '2023-01-01T15:00:00.000000000Z'
        file_type:
          type: string
          enum:
            - folder
          description: The type of file entry.
        name:
          type: string
          description: The name of the folder.
          example: Documents
        parent_folder_id:
          type:
            - string
            - 'null'
          format: uuid
          description: The ID of the parent folder, or null if this is a top-level folder.
      required:
        - id
        - object_id
        - object_slug
        - record_id
        - storage_provider
        - created_by_actor
        - created_at
        - file_type
        - name
        - parent_folder_id
      title: Folder
    connected-file:
      type: object
      properties:
        id:
          type: object
          properties:
            workspace_id:
              type: string
              format: uuid
              description: The ID of the workspace the file belongs to.
              example: 14beef7a-99f7-4534-a87e-70b564330a4c
            file_id:
              type: string
              format: uuid
              description: The ID of the file entry.
              example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          required:
            - workspace_id
            - file_id
        object_id:
          type: string
          format: uuid
          description: The ID of the object the record belongs to.
          example: 97052eb9-e65e-443f-a297-f2d9a4a7f795
        object_slug:
          type: string
          description: The slug of the object the record belongs to.
          example: people
        record_id:
          type: string
          format: uuid
          description: The ID of the record the file is linked to.
          example: bf071e1f-6035-429d-b874-d83ea64ea13b
        storage_provider:
          type: string
          enum:
            - attio
            - dropbox
            - box
            - google-drive
            - microsoft-onedrive
          description: The storage provider for this file entry.
          example: attio
        created_by_actor:
          type: object
          description: The actor that created this file entry.
          properties:
            id:
              type: string
              description: An ID to identify the actor.
              nullable: true
            type:
              type: string
              enum:
                - api-token
                - workspace-member
                - system
                - app
              nullable: true
              description: >-
                The type of actor. [Read more information on actor types
                here](/docs/actors).
          example:
            type: workspace-member
            id: 50cf242c-7fa3-4cad-87d0-75b1af71c57b
        created_at:
          type: string
          description: Timestamp representing when the file entry was created.
          example: '2023-01-01T15:00:00.000000000Z'
        file_type:
          type: string
          enum:
            - connected-file
          description: The type of file entry.
        external_provider_file_id:
          type: string
          description: The file ID in the external storage provider.
          example: 01ISGXZ5BRAMVD7SEPXNCYS4XGKT3YTOKQ
        microsoft_drive_id:
          type:
            - string
            - 'null'
          description: >-
            Microsoft drive ID. This field is only populated for
            `microsoft-onedrive` entries.
          example: b!-RIj2DuyvEyV1T4NlOaMHk8XkS_I8MdFlUCq1BlcjgmhRfAj3-Z8RY2VpuvV_tpd
      required:
        - id
        - object_id
        - object_slug
        - record_id
        - storage_provider
        - created_by_actor
        - created_at
        - file_type
        - external_provider_file_id
        - microsoft_drive_id
      title: Connected File
    connected-folder:
      type: object
      properties:
        id:
          type: object
          properties:
            workspace_id:
              type: string
              format: uuid
              description: The ID of the workspace the file belongs to.
              example: 14beef7a-99f7-4534-a87e-70b564330a4c
            file_id:
              type: string
              format: uuid
              description: The ID of the file entry.
              example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          required:
            - workspace_id
            - file_id
        object_id:
          type: string
          format: uuid
          description: The ID of the object the record belongs to.
          example: 97052eb9-e65e-443f-a297-f2d9a4a7f795
        object_slug:
          type: string
          description: The slug of the object the record belongs to.
          example: people
        record_id:
          type: string
          format: uuid
          description: The ID of the record the file is linked to.
          example: bf071e1f-6035-429d-b874-d83ea64ea13b
        storage_provider:
          type: string
          enum:
            - attio
            - dropbox
            - box
            - google-drive
            - microsoft-onedrive
          description: The storage provider for this file entry.
          example: attio
        created_by_actor:
          type: object
          description: The actor that created this file entry.
          properties:
            id:
              type: string
              description: An ID to identify the actor.
              nullable: true
            type:
              type: string
              enum:
                - api-token
                - workspace-member
                - system
                - app
              nullable: true
              description: >-
                The type of actor. [Read more information on actor types
                here](/docs/actors).
          example:
            type: workspace-member
            id: 50cf242c-7fa3-4cad-87d0-75b1af71c57b
        created_at:
          type: string
          description: Timestamp representing when the file entry was created.
          example: '2023-01-01T15:00:00.000000000Z'
        file_type:
          type: string
          enum:
            - connected-folder
          description: The type of file entry.
        external_provider_file_id:
          type: string
          description: The file ID in the external storage provider.
          example: 01ISGXZ5BRAMVD7SEPXNCYS4XGKT3YTOKQ
        microsoft_drive_id:
          type:
            - string
            - 'null'
          description: >-
            Microsoft drive ID. This field is only populated for
            `microsoft-onedrive` entries.
          example: b!-RIj2DuyvEyV1T4NlOaMHk8XkS_I8MdFlUCq1BlcjgmhRfAj3-Z8RY2VpuvV_tpd
      required:
        - id
        - object_id
        - object_slug
        - record_id
        - storage_provider
        - created_by_actor
        - created_at
        - file_type
        - external_provider_file_id
        - microsoft_drive_id
      title: Connected Folder
  securitySchemes:
    oauth2:
      type: oauth2
      description: This API uses OAuth 2.0 with the authorization code grant flow.
      flows:
        authorizationCode:
          authorizationUrl: https://app.attio.com/authorize
          tokenUrl: https://app.attio.com/oauth/token
          scopes:
            user_management:read: View workspace members.
            user_management:read-write: View workspace members.
            record_permission:read: View, and optionally write, records.
            record_permission:read-write: View, and optionally write, records.
            object_configuration:read: >-
              View, and optionally write, the configuration and attributes of
              objects.
            object_configuration:read-write: >-
              View, and optionally write, the configuration and attributes of
              objects.
            list_entry:read: View, and optionally write, the entries in a list.
            list_entry:read-write: View, and optionally write, the entries in a list.
            list_configuration:read: >-
              View, and optionally write, the configuration and attributes of
              lists.
            list_configuration:read-write: >-
              View, and optionally write, the configuration and attributes of
              lists.
            public_collection:read: >-
              View, and optionally write, both the settings and information
              within public collections.
            public_collection:read-write: >-
              View, and optionally write, both the settings and information
              within public collections.
            private_collection:read: >-
              View, and optionally modify, both the settings and information of
              all collections within the workspace, regardless of their access
              settings.
            private_collection:read-write: >-
              View, and optionally modify, both the settings and information of
              all collections within the workspace, regardless of their access
              settings.
            comment:read: View comments (and threads), and optionally write comments.
            comment:read-write: View comments (and threads), and optionally write comments.
            task:read: View, and optionally write, tasks.
            task:read-write: View, and optionally write, tasks.
            note:read: View, and optionally write, notes.
            note:read-write: View, and optionally write, notes.
            meeting:read: View, and optionally write, meetings.
            meeting:read-write: View, and optionally write, meetings.
            call_recording:read: >-
              View, and optionally write, call recordings, transcripts and
              speakers for meetings.
            call_recording:read-write: >-
              View, and optionally write, call recordings, transcripts and
              speakers for meetings.
            webhook:read: View, and optionally manage, webhooks.
            webhook:read-write: View, and optionally manage, webhooks.
            file:read: View, and upload files.
            file:read-write: View, and upload files.

````