Dotfile Activities API

The Activities API from Dotfile — 1 operation(s) for activities.

Operations 1

GET /v1/activities List all activities #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dotfile-activities-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dotfile-activities-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ⚙️ API specifications Activities API
  description: Dotfile public API documentation
  version: v1
  contact: {}
servers:
- url: https://api.dotfile.com
  description: Production environment
security:
- DotfileAPIKey: []
tags:
- name: Activities
paths:
  /v1/activities:
    get:
      operationId: activity-get-many
      summary: List all activities
      description: 'Return a list of all activities in your Dotfile workspace


        ---


        #### See also

        Learn more about Filtering, Sorting and Pagination'
      parameters:
      - name: case_id
        required: false
        in: query
        description: "Filter items by the `case_id.{operator}` field.  \nYou can use the `eq` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: individual_id
        required: false
        in: query
        description: "Filter items by the `individual_id.{operator}` field.  \nYou can use the `eq` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: company_id
        required: false
        in: query
        description: "Filter items by the `company_id.{operator}` field.  \nYou can use the `eq` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: type
        required: false
        in: query
        description: "Filter items by the `type.{operator}` field.  \nYou can use the `eq`, `not_eq`, `in` and `not_in` operators, the `eq` operator being the default.  \nComma separated for multiple values (`in` and `not_in`)."
        schema:
          type: string
          enum:
          - api__created__case
          - contact__created__case
          - user__created__case
          - api__updated_info__case
          - contact__updated_info__case
          - user__updated_info__case
          - api__updated_status__case
          - user__updated_status__case
          - system__updated_status__case
          - api__updated_template__case
          - user__updated_template__case
          - system__updated_template__case
          - api__updated_assignee__case
          - user__updated_assignee__case
          - system__updated_assignee__case
          - user__transferred_from_workspace__case
          - api__assigned__case__to_space
          - user__assigned__case__to_space
          - contact__assigned__case__to_space
          - api__updated_metadata__case
          - contact__updated_metadata__case
          - user__updated_metadata__case
          - api__updated_risk__case
          - user__updated_risk__case
          - system__updated_risk__case
          - system__updated_review__case
          - user__updated_review__case
          - api__confirmed_review__case
          - system__confirmed_review__case
          - user__confirmed_review__case
          - api__deleted__case
          - user__deleted__case
          - api__added_tags__case
          - user__added_tags__case
          - system__added_tags__case
          - api__removed_tags__case
          - user__removed_tags__case
          - system__added__case_control
          - system__removed__case_control
          - api__updated__case_relation
          - contact__updated__case_relation
          - user__updated__case_relation
          - user__sent__communication
          - system__sent__communication
          - system__received__communication
          - api__created__individual
          - contact__created__individual
          - user__created__individual
          - api__updated__individual
          - contact__updated__individual
          - user__updated__individual
          - api__marked_as_relevant__individual
          - user__marked_as_relevant__individual
          - api__marked_as_not_relevant__individual
          - contact__marked_as_not_relevant__individual
          - user__marked_as_not_relevant__individual
          - contact__sent_collaboration_email__individual
          - api__deleted__individual
          - user__deleted__individual
          - api__created__company
          - contact__created__company
          - user__created__company
          - api__updated__company
          - contact__updated__company
          - user__updated__company
          - api__marked_as_relevant__company
          - user__marked_as_relevant__company
          - api__marked_as_not_relevant__company
          - contact__marked_as_not_relevant__company
          - user__marked_as_not_relevant__company
          - api__deleted__company
          - user__deleted__company
          - user__purchased__company_data
          - api__started__check
          - contact__started__check
          - user__started__check
          - system__started__check
          - system__rolled_back__check
          - api__set_review_needed__check
          - contact__set_review_needed__check
          - system__set_review_needed__check
          - api__approved__check
          - user__approved__check
          - system__approved__check
          - api__rejected__check
          - user__rejected__check
          - system__rejected__check
          - api__enabled_monitoring__check
          - user__enabled_monitoring__check
          - api__disabled_monitoring__check
          - user__disabled_monitoring__check
          - system__disabled_monitoring__check
          - system__expired__check
          - end_user__started_flow__check
          - end_user__finished_flow__check
          - user__deleted__check
          - api__deleted__check
          - api__ignored__aml_hit
          - user__ignored__aml_hit
          - api__confirmed__aml_hit
          - user__confirmed__aml_hit
          - system__recreated_search__aml_data
          - user__acknowledged__company_monitoring_alert
          - user__run__template
          - api__run__template
          - contact__completed_forms__client_portal
          - contact__completed_checks__client_portal
          - user__mark_as_completed__case_control
          - system__mark_as_completed__case_control
          - user__mark_as_uncompleted__case_control
          - system__mark_as_uncompleted__case_control
      - name: author_id
        required: false
        in: query
        description: "Filter items by the `author_id.{operator}` field.  \nYou can use the `eq` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: created_at
        required: false
        in: query
        description: "Filter items by the `created_at.{operator}` field.  \nYou can use the `eq`, `gte`, `lte`, `gt` and `lt` operators, the `eq` operator being the default."
        schema:
          type: string
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]{1,3})?(Z|([0-9]{2}:[0-9]{2}))?)?$
          example:
          - '2023-01-31'
          - '2023-01-31T13:30:00Z'
          - '2023-01-31T13:30:00.000Z'
          description: Date (`yyyy-MM-dd` eg `2023-01-31`) or date time (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`) in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
      - name: sort
        required: false
        in: query
        description: "Use this parameter to sort query results.  \nIf not specified, sorted in _ascending_ order with values of field `created_at`.  \nAvailable fields are `created_at`."
        schema:
          default: created_at
          type: string
        examples:
          created_at:
            summary: Sort by values of the "created_at" field in ascending order
            value: created_at
          created_at_descending:
            summary: Sort by values of the "created_at" field in descending order
            value: created_at.desc
      - name: page
        required: false
        in: query
        description: "Query response is paginated.  \nUse this parameter to choose which page you want to display.  \nPage index starts at 1 (the default)."
        schema:
          default: 1
          type: number
          minimum: 1
      - name: limit
        required: false
        in: query
        description: "Query response is paginated.  \nUse this parameter to choose the number of items per page.  \nLimit defaults to 20, maximum value is 100."
        schema:
          type: number
          default: 20
          minimum: 1
          maximum: 100
      responses:
        '200':
          description: 'List of activities in the workspace


            **ℹ️ Click to see full payload**'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActivityList'
        '400':
          description: "The request is either malformed or contain invalid parameters.\n\n  - One or multiple filtering parameters might be malformed. Make sure to use a supported operator and value for each filter.\n  - If specified, make sure the value of the `page` or `limit` query parameter are valid.\n  - Value of the `sort` parameter is invalid. Make sure the field name is supported, the sorting order is correctly specified, and a same field is not used multiple times for sorting.\n  "
      tags:
      - Activities
components:
  schemas:
    ActivityList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Activity'
        pagination:
          example:
            page: 1
            limit: 20
            count: 42
          allOf:
          - $ref: '#/components/schemas/Pagination'
      required:
      - data
      - pagination
    ActivityCaseContext:
      type: object
      properties:
        status:
          type: string
          enum:
          - draft
          - open
          - approved
          - rejected
          - closed
      required:
      - status
    ActivityCaseReviewContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        status:
          type: string
          enum:
          - approved
          - rejected
          - closed
        comment:
          type:
          - string
          - 'null'
        next_review_at:
          type:
          - string
          - 'null'
          format: date
          description: Date in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)(`yyyy-MM-dd` eg `2023-01-31`)
      required:
      - id
      - status
      - comment
      - next_review_at
    Pagination:
      type: object
      properties:
        page:
          type: number
          description: Current page number (defined in query parameter)
          default: 1
        limit:
          type: number
          description: Item count per page (defined in query parameter)
          default: 20
        count:
          type: number
          description: Total items count
          example: 42
      required:
      - page
      - limit
      - count
    ActivityTemplateContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        key:
          type: string
      required:
      - id
      - name
      - key
    ActivityCheckContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        type:
          type: string
          enum:
          - id_verification
          - id_document
          - aml
          - company_monitoring
          - document
          - ekyc
          - electronic_signature
          - fraud_database
          - online_reputation
        subtype:
          type:
          - string
          - 'null'
          description: "Contains the `subtype` for some check `type`:  \n- `document`: Currently contains `\"document_type:{document_type_key}\"`  \n- `electronic_signature`: Contains `\"document_template:{document_template_key}\"`  \n- For all other check type, always contains `null`"
      required:
      - id
      - type
      - subtype
    ActivityAiAgentContext:
      type: object
      properties:
        execution_id:
          type: string
          format: uuid
        type:
          type: string
          enum:
          - review_aml_check
          - review_document_check
          - review_id_document_check
          - review_id_verification_check
      required:
      - execution_id
      - type
    ActivityClientPortalContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
      required:
      - id
      - name
    ActivityContext:
      type: object
      properties:
        case:
          $ref: '#/components/schemas/ActivityCaseContext'
        case_review:
          $ref: '#/components/schemas/ActivityCaseReviewContext'
        risk:
          $ref: '#/components/schemas/ActivityRiskContext'
        template:
          $ref: '#/components/schemas/ActivityTemplateContext'
        case_relation:
          allOf:
          - $ref: '#/components/schemas/ActivityCaseRelationContext'
        check:
          allOf:
          - $ref: '#/components/schemas/ActivityCheckContext'
        aml_hit_ids:
          type: string
        vendor:
          type: string
          enum:
          - pappers
          - kompany
          - creditsafe
          - kyckr
          - companies_house
          - inpi
          - info_camere
          - transparenzregister
          - topograph
          - charity_commission
          - mod_finance
        client_portal:
          $ref: '#/components/schemas/ActivityClientPortalContext'
        ai_agent:
          allOf:
          - $ref: '#/components/schemas/ActivityAiAgentContext'
    ActivityCaseRelationContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        from_company_id:
          type:
          - string
          - 'null'
          format: uuid
        from_individual_id:
          type:
          - string
          - 'null'
          format: uuid
        to_company_id:
          type: string
          format: uuid
      required:
      - id
      - from_company_id
      - from_individual_id
      - to_company_id
    Activity:
      type: object
      properties:
        id:
          type: string
          format: uuid
        case_id:
          type: string
          format: uuid
        individual_id:
          type:
          - string
          - 'null'
          format: uuid
        company_id:
          type:
          - string
          - 'null'
          format: uuid
        type:
          type: string
          enum:
          - api__created__case
          - contact__created__case
          - user__created__case
          - api__updated_info__case
          - contact__updated_info__case
          - user__updated_info__case
          - api__updated_status__case
          - user__updated_status__case
          - system__updated_status__case
          - api__updated_template__case
          - user__updated_template__case
          - system__updated_template__case
          - api__updated_assignee__case
          - user__updated_assignee__case
          - system__updated_assignee__case
          - user__transferred_from_workspace__case
          - api__assigned__case__to_space
          - user__assigned__case__to_space
          - contact__assigned__case__to_space
          - api__updated_metadata__case
          - contact__updated_metadata__case
          - user__updated_metadata__case
          - api__updated_risk__case
          - user__updated_risk__case
          - system__updated_risk__case
          - system__updated_review__case
          - user__updated_review__case
          - api__confirmed_review__case
          - system__confirmed_review__case
          - user__confirmed_review__case
          - api__deleted__case
          - user__deleted__case
          - api__added_tags__case
          - user__added_tags__case
          - system__added_tags__case
          - api__removed_tags__case
          - user__removed_tags__case
          - system__added__case_control
          - system__removed__case_control
          - api__updated__case_relation
          - contact__updated__case_relation
          - user__updated__case_relation
          - user__sent__communication
          - system__sent__communication
          - system__received__communication
          - api__created__individual
          - contact__created__individual
          - user__created__individual
          - api__updated__individual
          - contact__updated__individual
          - user__updated__individual
          - api__marked_as_relevant__individual
          - user__marked_as_relevant__individual
          - api__marked_as_not_relevant__individual
          - contact__marked_as_not_relevant__individual
          - user__marked_as_not_relevant__individual
          - contact__sent_collaboration_email__individual
          - api__deleted__individual
          - user__deleted__individual
          - api__created__company
          - contact__created__company
          - user__created__company
          - api__updated__company
          - contact__updated__company
          - user__updated__company
          - api__marked_as_relevant__company
          - user__marked_as_relevant__company
          - api__marked_as_not_relevant__company
          - contact__marked_as_not_relevant__company
          - user__marked_as_not_relevant__company
          - api__deleted__company
          - user__deleted__company
          - user__purchased__company_data
          - api__started__check
          - contact__started__check
          - user__started__check
          - system__started__check
          - system__rolled_back__check
          - api__set_review_needed__check
          - contact__set_review_needed__check
          - system__set_review_needed__check
          - api__approved__check
          - user__approved__check
          - system__approved__check
          - api__rejected__check
          - user__rejected__check
          - system__rejected__check
          - api__enabled_monitoring__check
          - user__enabled_monitoring__check
          - api__disabled_monitoring__check
          - user__disabled_monitoring__check
          - system__disabled_monitoring__check
          - system__expired__check
          - end_user__started_flow__check
          - end_user__finished_flow__check
          - user__deleted__check
          - api__deleted__check
          - api__ignored__aml_hit
          - user__ignored__aml_hit
          - api__confirmed__aml_hit
          - user__confirmed__aml_hit
          - system__recreated_search__aml_data
          - user__acknowledged__company_monitoring_alert
          - user__run__template
          - api__run__template
          - contact__completed_forms__client_portal
          - contact__completed_checks__client_portal
          - user__mark_as_completed__case_control
          - system__mark_as_completed__case_control
          - user__mark_as_uncompleted__case_control
          - system__mark_as_uncompleted__case_control
        author_type:
          type: string
          enum:
          - api
          - user
          - system
          - contact
        author_id:
          type:
          - string
          - 'null'
          format: uuid
          description: Depending on author_type, could be either a user_id (user), an api_key_id (api), template_id (system) or individual_id (contact)
        user:
          description: Defined if author_type is user, otherwise null
          allOf:
          - $ref: '#/components/schemas/NestedUser'
        context:
          $ref: '#/components/schemas/ActivityContext'
        changes:
          description: 'EXPERIMENTAL: this data structure will evolve in the future'
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ActivityChange'
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
      required:
      - id
      - case_id
      - individual_id
      - company_id
      - type
      - author_type
      - author_id
      - user
      - context
      - changes
      - created_at
    NestedUser:
      type: object
      properties:
        id:
          type: string
          format: uuid
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
          format: email
      required:
      - id
      - first_name
      - last_name
      - email
    ActivityRiskContext:
      type: object
      properties:
        id:
          type: string
          format: uuid
        level:
          type: string
          enum:
          - not_defined
          - low
          - medium
          - high
          - critical
          - prohibited
        mode:
          type: string
          enum:
          - automatic
          - manual
        comment:
          type:
          - string
          - 'null'
      required:
      - id
      - level
      - mode
      - comment
    ActivityChange:
      type: object
      properties:
        name:
          type: string
        previous:
          oneOf:
          - type: string
            title: string
          - type: boolean
            title: boolean
          - type: number
            title: number
        next:
          oneOf:
          - type: string
            title: string
          - type: boolean
            title: boolean
          - type: number
            title: number
      required:
      - name
      - previous
      - next
  securitySchemes:
    DotfileAPIKey:
      type: apiKey
      in: header
      name: X-DOTFILE-API-KEY
      description: Configure your api key in the Workspace settings
x-uploaded-at: '2026-08-14T14:05:07.336Z'
x-commit-sha: f460fa65a5cc33cf4211bbcee7818f93d5b9e8de