---
title: "Get reports"
method: GET
path: "/datainsights/v1.1/reports"
tags: ["Reports"]
---

# Get reports

`GET /datainsights/v1.1/reports`

Returns all the reports for a single property.

## Query parameters

- `offset` integer
- `limit` integer
- `sort` 'id,asc' | 'id,desc' | 'title,asc' | 'title,desc' | 'description,asc' | 'description,desc' | 'dataset_id,asc' | 'dataset_id,desc' | 'folder_id,asc' | 'folder_id,desc' | 'user_id,asc' | 'user_id,desc' | 'updated_at,asc' | 'updated_at,desc'
- `ids` integer[]
- `title` string
- `description` string, nullable
- `dataset_ids` integer[]
- `folder_ids` string
- `tag_ids` integer[]
- `user_ids` integer[]

## Headers

- `X-PROPERTY-ID` integer, required

## Response `200`

OK

- Reports
  - `offset` integer — The difference between start of the data and the start of the response data
  - `limit` integer — The maximum number of results in the response
  - `total` integer — The total number of records
  - `reports` ReportPreview[]
    - `id` integer, required — Report id
    - `title` string, required — Report title
    - `description` string, nullable — Report description
    - `dataset_id` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9, required — Dataset id
    - `columns` ReportColumns[], required — Report columns
      - `cdf` ReportCDF, required
        - `type` 'default' | 'custom' — Report cdf type
        - `column` string, required — Report cdf name
        - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
      - `metrics` string[] — Report column metrics
    - `group_rows` ReportGroup[], nullable — Report group rows
      - `cdf` ReportCDF, required
        - `type` 'default' | 'custom' — Report cdf type
        - `column` string, required — Report cdf name
        - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
      - `modifier` 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year' | 'week' | 'weekday' | 'd' | 'm' | 'time_hour' | 'time_minute' | 'time_second' — Report group modifier
    - `group_columns` ReportGroup[], nullable — Report group columns
      - `cdf` ReportCDF, required
        - `type` 'default' | 'custom' — Report cdf type
        - `column` string, required — Report cdf name
        - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
      - `modifier` 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year' | 'week' | 'weekday' | 'd' | 'm' | 'time_hour' | 'time_minute' | 'time_second' — Report group modifier
    - `periods` ReportPeriod[], nullable — Periods to compare
      - `cdf` ReportCDF, required
        - `type` 'default' | 'custom' — Report cdf type
        - `column` string, required — Report cdf name
        - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
      - `name` string, required — Label for a period
      - `id` string — machine name of period (auto-generated)
      - `start` string, required — The beginning date or relative date of a period. When both start and end dates are relative dates, the difference between today and the end date is subtracted from the start date.
      - `end` string, required — The beginning date or relative date of a period
      - `start_relative_to_end` boolean — If true, relative start date will be relative to the end date instead of today,e.g. if end date is 2023-01-01, a start date of yesterday would be 2022-12-31
    - `comparisons` ReportComparison[], nullable — A list of up to 5 Comparisons, each containing 'name' and 'filters' properties. The 'filters' are the same structure as those in report.filters.
      - `name` string, required — Label for a Comparison
      - `id` string — machine name of comparison (auto-generated)
      - `filters` ReportComparisonFilters
        - `and` ReportFilter[]
          - `and` ReportFilter[]
          - `or` ReportFilter[]
          - `cdf` ReportCDF
            - `type` 'default' | 'custom' — Report cdf type
            - `column` string, required — Report cdf name
            - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
          - `operator` 'begins' | 'not_begins' | 'ends' | 'not_ends' | 'contains' | 'not_contains' | 'list_contains' | 'not_list_contains' | 'is_null' | 'is_not_null' | 'is_empty' | 'is_not_empty' | 'equals' | 'not_equals' | 'greater_than' | 'less_than' | 'less_than_or_equal' | 'greater_than_or_equal' — Filter operator value
          - `value` unknown
    - `filters` ReportFilters
      - `and` ReportFilter[]
        - `and` ReportFilter[]
        - `or` ReportFilter[]
        - `cdf` ReportCDF
          - `type` 'default' | 'custom' — Report cdf type
          - `column` string, required — Report cdf name
          - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
        - `operator` 'begins' | 'not_begins' | 'ends' | 'not_ends' | 'contains' | 'not_contains' | 'list_contains' | 'not_list_contains' | 'is_null' | 'is_not_null' | 'is_empty' | 'is_not_empty' | 'equals' | 'not_equals' | 'greater_than' | 'less_than' | 'less_than_or_equal' | 'greater_than_or_equal' — Filter operator value
        - `value` unknown
      - `or` ReportFilter[]
        - `and` ReportFilter[]
        - `or` ReportFilter[]
        - `cdf` ReportCDF
          - `type` 'default' | 'custom' — Report cdf type
          - `column` string, required — Report cdf name
          - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
        - `operator` 'begins' | 'not_begins' | 'ends' | 'not_ends' | 'contains' | 'not_contains' | 'list_contains' | 'not_list_contains' | 'is_null' | 'is_not_null' | 'is_empty' | 'is_not_empty' | 'equals' | 'not_equals' | 'greater_than' | 'less_than' | 'less_than_or_equal' | 'greater_than_or_equal' — Filter operator value
        - `value` unknown
    - `sort` ReportSort[], nullable — Report sort
      - `cdf` ReportCDF, required
        - `type` 'default' | 'custom' — Report cdf type
        - `column` string, required — Report cdf name
        - `multi_level_id` 1 | 2 | 3 | 4 — Multi-level where CDF is located
      - `direction` 'asc' | 'desc', required — Report sort direction
    - `settings` ReportSettings
      - `details` boolean, required — Report details
      - `totals` boolean, required — Report totals
      - `transpose` boolean — Transpose Report
    - `formats` ReportFormats
      - `date` 'YYYY-MM-DD' | 'YYYY.MM.DD' | 'YYYY/MM/DD' | 'YYYY-DD-MM' | 'YYYY.DD.MM' | 'YYYY/DD/MM' | 'MM-YYYY-DD' | 'MM.YYYY.DD' | 'MM/YYYY/DD' | 'MM-DD-YYYY' | 'MM.DD.YYYY' | 'MM/DD/YYYY' | 'DD-YYYY-MM' | 'DD.YYYY.MM' | 'DD/YYYY/MM' | 'DD-MM-YYYY' | 'DD.MM.YYYY' | 'DD/MM/YYYY' | 'null', nullable — Date Format that will be applied in the export. The default is YYYY-MM-DD
    - `type` 'List' | 'Summary' | 'Pivot', required — Report type
    - `folder_id` integer, nullable, required — Folder id
    - `tags` Tag[], required — Report tags
      - `id` integer, required — Tag Id
      - `name` string, required — Tag Name
    - `schedule_ids` integer[], required — Report schedule ids
    - `updated_at` string — Report updated at
    - `property_id` integer, required — Report property id
    - `property_ids` integer[], required — Report property ids
    - `custom_cdfs` ReportCustomCdf[] — Report custom cdfs
      - `id` integer — Report custom cdf id
      - `column` string — Report custom cdf column
      - `name` string, required — Report custom cdf name
      - `description` string, nullable — Report custom cdf description
      - `formula` CustomCdfFormula[], required
        - `kind` 'cdf' | 'separator' | 'operator' | 'operand' | 'parenthesis', required
        - `value` string, required — - If the kind is *cdf* the value must be a valid cdf. - If the kind is *separator* the supported values are any. - If the kind is *operator* the supported values are: ['+', '-', '*', '/']. - If the kind is *operand* the supported values are numbers. - If the kind is *parenthesis* the supported values are: ( or ).
        - `metric` 'sum' | 'mean' | 'max' | 'min' | 'count' | 'std' | 'var' | 'null', nullable
      - `kind` 'String' | 'Number' | 'Dynamic', required — Report custom cdf kind
      - `created_at` string — Report custom cdf created at
      - `updated_at` string — Report custom cdf updated at
      - `format` 'number' | 'currency' | 'percentage' | 'null', nullable — Custom Cdf Numeric format (valid for Number and Dynamic only)
    - `created_by` User
      - `id` integer
      - `name` string
      - `email` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/cloudbeds/apis/cloudbeds-api.md) · [All operations](https://skmtc.net/cloudbeds/apis/cloudbeds-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cloudbeds/cloudbeds-api/revisions/2faa857793e8/schema)
