Datto /v2/activity-logs API

Fetching RMM Activity Logs

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/datto-v2-activity-logs-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 email required.

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

OpenAPI Specification

datto-v2-activity-logs-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Datto RMM /v2/account /v2/account /v2/activity-logs API
  description: Datto RMM (Remote Monitoring and Management) REST API
  license:
    name: '©Datto, Inc. - All rights reserved. '
    url: http://www.datto.com/
  version: 2.0.0 (Build 201_aadf6556fb176a75fbb9b2aad0f0d2301d64c88a)
servers:
- url: https://concord-api.centrastage.net/api
  description: Generated server url
tags:
- name: /v2/activity-logs
  description: Fetching RMM Activity Logs
paths:
  /v2/activity-logs:
    get:
      tags:
      - /v2/activity-logs
      summary: Fetches the activity logs.
      operationId: getActivities
      parameters:
      - name: size
        in: query
        description: Specifies the number of records to be returned
        required: false
        schema:
          type: integer
          format: int32
        example: 20
      - name: order
        in: query
        description: Specifies the order in which records should be returned based on their creation date
        required: false
        schema:
          type: string
          enum:
          - asc
          - desc
        example: asc
      - name: searchAfter
        in: query
        description: Acts as a pointer to determine the starting point for returning records from the database. It is not advised to set this parameter manually. Instead, it is recommended to utilize the 'prevPage' and 'nextPage' URLs that are returned in the response where this parameter in already included.
        required: false
        schema:
          type: array
          items:
            type: string
        example: 1662554037000,60761aa3-d03e-3d76-b75b-da28629a4103
      - name: page
        in: query
        required: false
        schema:
          type: string
          enum:
          - next
          - previous
        example: next
      - name: from
        in: query
        description: 'Defines the UTC start date for fetching data. By default API returns logs from last 15 minutes. Format: yyyy-MM-ddTHH:mm:ssZ'
        required: false
        schema:
          type: string
        example: '2022-12-21T10:15:30Z'
      - name: until
        in: query
        description: 'Defines the UTC end date for fetching data. Format: yyyy-MM-ddTHH:mm:ssZ'
        required: false
        schema:
          type: string
        example: '2023-02-25T10:15:30Z'
      - name: entities
        in: query
        description: Filters the returned activity logs based on their type. It can take multiple values separated by comma
        required: false
        schema:
          type: array
          enum:
          - device
          - user
          items:
            type: string
            enum:
            - device
            - user
        example: device
      - name: categories
        in: query
        description: Filters the returned activity logs based on their category. It can take multiple values separated by comma
        required: false
        schema:
          type: array
          items:
            type: string
        example: job,device
      - name: actions
        in: query
        description: Filters the returned activity logs based on their action. It can take multiple values separated by comma
        required: false
        schema:
          type: array
          items:
            type: string
        example: deployment,note
      - name: siteIds
        in: query
        description: Filters the returned activity logs based on the site they were created in. It can take multiple values separated by comma
        required: false
        schema:
          type: array
          items:
            type: integer
            format: int64
        example: 4,8
      - name: userIds
        in: query
        description: Filters the returned activity logs based on the user they are associated with. It can take multiple values separated by comma
        required: false
        schema:
          type: array
          items:
            type: integer
            format: int64
        example: 1,4
      - name: searchQuery
        in: query
        description: Enter queries using single words, phrases, terms containing wildcards or boolean operators, fuzzy searches, grouped searches, or special characters. See <a href="https://rmm.datto.com/help/en/Content/3NEWUI/Analytics/ActivityLog.htm">Activity Log</a> for more details.
        required: false
        schema:
          type: string
        example: 'data.filter_id : "filterId" AND device.hostname : "hostname"'
      responses:
        '500':
          description: Internal Server Error
        '409':
          description: Conflict
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActivityLogsPage'
        '403':
          description: Authenticated user doesn't have access to this resource.
        '401':
          description: Request can not be authorized.
        '400':
          description: Request parameters are invalid.
components:
  schemas:
    UserDto:
      type: object
      description: User information
      properties:
        id:
          type: integer
          format: int64
        userName:
          type: string
        firstName:
          type: string
        lastName:
          type: string
    ActivityLogsPage:
      type: object
      description: Activity logs page
      properties:
        pageDetails:
          $ref: '#/components/schemas/PaginationData'
        activities:
          type: array
          items:
            $ref: '#/components/schemas/ActivityLog'
        error:
          type: string
          description: Shows error information when request fails at the database layer
    SiteBasicDto:
      type: object
      description: Site information
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    ActivityLog:
      type: object
      description: Activity log data
      properties:
        id:
          type: string
        entity:
          type: string
          enum:
          - DEVICE
          - USER
        category:
          type: string
        action:
          type: string
        date:
          type: number
          format: double
          description: Activity Log creation unix timestamp
          example: 1.689072497714E9
          pattern: seconds.nanoseconds
        site:
          $ref: '#/components/schemas/SiteBasicDto'
        deviceId:
          type: integer
          format: int64
        hostname:
          type: string
        user:
          $ref: '#/components/schemas/UserDto'
        details:
          type: string
        hasStdOut:
          type: boolean
        hasStdErr:
          type: boolean
    PaginationData:
      type: object
      description: Pagination data
      properties:
        count:
          type: integer
          format: int32
        totalCount:
          type: integer
          format: int64
        prevPageUrl:
          type: string
        nextPageUrl:
          type: string