Skip to main content

List Report Schedules

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules
Query Parameters:
NameTypeRequiredDefaultDescriptionEnum Values
filterstringfalse”USER”Filter type for the schedules-
titlestringfalse""Filter by title-
limitintegerfalse0Number of items to return-
skipintegerfalse0Number of items to skip-
orderBystringfalse”startDate”Field to sort bystartDate, nextRunDate, title
isAscendingbooleanfalsefalseSort in ascending order-
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "reportViewId": 789012,
    "pageId": 345678,
    "title": "Monthly Sales Report",
    "viewName": "Sales Dashboard",
    "type": "RECURRING",
    "ownerId": 901234,
    "embedViewId": 567890,
    "owner": true,
    "cardCount": 5,
    "recipientCount": 10,
    "cardId": 234567,
    "schedule": {
      "frequency": "MONTHLY",
      "daysToRun": "1",
      "hourOfDay": 9,
      "minOfHour": 0,
      "timezone": "America/New_York",
      "enabled": true
    }
  }
]

Create Report Schedule

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules
Request Body: ReportScheduleInfo object Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '{
  "title": "Weekly Performance Report",
  "pageId": 345678,
  "viewId": 789012,
  "schedule": {
    "frequency": "WEEKLY",
    "daysToRun": "MON",
    "hourOfDay": 8,
    "minOfHour": 0,
    "timezone": "America/New_York",
    "enabled": true,
    "additionalRecipients": [
      {
        "type": "EMAIL",
        "value": "user@example.com"
      }
    ]
  },
  "attachmentInclude": true
}'
Responses:
{
  "id": 123457,
  "reportViewId": 789012,
  "pageId": 345678,
  "title": "Weekly Performance Report",
  "schedule": {
    "frequency": "WEEKLY",
    "daysToRun": "MON",
    "hourOfDay": 8,
    "minOfHour": 0,
    "enabled": true,
    "nextRunDate": 1700481600000
  }
}

Delete Report Schedule by Page ID

Playground

Method: DELETE
Endpoint: /api/content/v1/reportschedules
Query Parameters:
NameTypeRequiredDefaultDescription
pageIdintegertrue-ID of the page to delete schedule for
Example:
curl --request DELETE \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Get Report Schedule by ID

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/{scheduleId}
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule to retrieve
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{
  "id": 123456,
  "reportViewId": 789012,
  "pageId": 345678,
  "title": "Monthly Sales Report",
  "schedule": {
    "frequency": "MONTHLY",
    "daysToRun": "1",
    "hourOfDay": 9,
    "minOfHour": 0,
    "timezone": "America/New_York",
    "enabled": true
  }
}

Update Report Schedule

Playground

Method: PUT
Endpoint: /api/content/v1/reportschedules/{scheduleId}
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule to update
Request Body: ReportScheduleInfo object Example:
curl --request PUT \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '{
  "title": "Updated Monthly Sales Report",
  "schedule": {
    "frequency": "MONTHLY",
    "daysToRun": "15",
    "hourOfDay": 10,
    "minOfHour": 30,
    "timezone": "America/New_York",
    "enabled": true
  }
}'
Responses:
{
  "id": 123456,
  "title": "Updated Monthly Sales Report",
  "schedule": {
    "frequency": "MONTHLY",
    "daysToRun": "15",
    "hourOfDay": 10,
    "minOfHour": 30,
    "timezone": "America/New_York",
    "enabled": true,
    "nextRunDate": 1701864600000
  }
}

Delete Report Schedule

Playground

Method: DELETE
Endpoint: /api/content/v1/reportschedules/{scheduleId}
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule to delete
Example:
curl --request DELETE \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Enable/Disable Report Schedule

Playground

Method: PUT
Endpoint: /api/content/v1/reportschedules/{scheduleId}/enabled
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: boolean Example:
curl --request PUT \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/enabled' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data true
Responses:
{}

Get Report History by Schedule ID

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/{scheduleId}/history
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Query Parameters:
NameTypeRequiredDefaultDescription
limitintegerfalse100Number of items to return
skipintegerfalse0Number of items to skip
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/history' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 789012,
    "reportId": 123456,
    "reportTitle": "Monthly Sales Report",
    "reportSubject": "Sales Report for November 2024",
    "startTime": "2024-11-01T09:00:00Z",
    "endTime": "2024-11-01T09:05:00Z",
    "automated": true,
    "cardCount": 5,
    "attachmentCount": 2,
    "attachmentSize": 1024000,
    "emailSize": 1536000,
    "status": "success",
    "recipients": [
      {
        "userId": 901234,
        "displayName": "John Doe",
        "emailAddress": "john.doe@example.com"
      }
    ]
  }
]

Build and Email Report

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/notifications
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: Array of ReportRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/notifications' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "userId": 901234,
    "displayName": "John Doe",
    "emailAddress": "john.doe@example.com"
  }
]'
Responses:
{}

Queue Build and Email Report

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/notifications/queue
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: Array of ReportRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/notifications/queue' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "userId": 901234,
    "displayName": "John Doe",
    "emailAddress": "john.doe@example.com"
  }
]'
Responses:
{}

Queue Report Now

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/queue
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: Array of ReportScheduleRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/queue' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "type": "EMAIL",
    "value": "john.doe@example.com"
  }
]'
Responses:
{}

Resubscribe to Report

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/resubscribe
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Query Parameters:
NameTypeRequiredDescription
userIdintegerfalseUser ID
emailIdstringfalseEmail ID
Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/resubscribe' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Send Report Now

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/sendnow
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: Array of ReportScheduleRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/sendnow' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "type": "EMAIL",
    "value": "john.doe@example.com"
  }
]'
Responses:
{}

Send Resubscribe Email

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/sendResubscribe
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Request Body: Array of ReportScheduleRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/sendResubscribe' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "type": "EMAIL",
    "value": "john.doe@example.com"
  }
]'
Responses:
{}

Unsubscribe from Report

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/{scheduleId}/unsubscribe
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/unsubscribe' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Delete Unsubscribed Recipient

Playground

Method: DELETE
Endpoint: /api/content/v1/reportschedules/{scheduleId}/unsubscribe/recipient
Path Parameters:
NameTypeRequiredDescription
scheduleIdintegertrueID of the schedule
Query Parameters:
NameTypeRequiredDescription
userIdintegerfalseUser ID
emailIdstringfalseEmail ID
Example:
curl --request DELETE \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/123456/unsubscribe/recipient' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Render Card for Email

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/card-email-data
Request Body: Array of integers (card IDs) Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/card-email-data' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  123,
  456,
  789
]'
Responses:
{
  "additionalProperties": {
    "title": "Sample Card",
    "encodedImage": "base64string",
    "encodedImageId": "img123",
    "timeframeLabel": "Last 30 Days",
    "summaryNumberValue": "10,000",
    "summaryNumberLabel": "Total Sales",
    "htmlContent": "<div>Card content</div>",
    "cardType": "kpi",
    "cardLink": "https://instance.domo.com/cards/123",
    "pdpEnabled": true,
    "certified": true,
    "companyCertified": false
  }
}

Get Created Report History

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/created
Query Parameters:
NameTypeRequiredDefaultDescription
filterstringfalse”USER”Filter type
daysintegerfalse10Number of days to look back
isAscendingbooleanfalsefalseSort order
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/created' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "reportId": 123456,
    "reportTitle": "New Report",
    "ownerId": 789,
    "created": "2024-11-14T10:00:00Z",
    "resourceType": "PAGE",
    "resourceId": 456,
    "resourceName": "Dashboard"
  }
]

Enable/Disable Scheduled Report Emails

Playground

Method: PUT
Endpoint: /api/content/v1/reportschedules/emails/enabled
Request Body: boolean Example:
curl --request PUT \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/emails/enabled' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data true
Responses:
{}

Get Extended Report History

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/extendedHistory
Query Parameters:
NameTypeRequiredDefaultDescriptionEnum Values
filterstringfalse”USER”Filter type-
daysintegerfalse10Number of days to look back-
orderBystringfalse”startTime”Field to sort byreportTitle, startTime, endTime, automated, cardCount, attachmentCount, attachmentSize, emailSize
isAscendingbooleanfalsefalseSort order-
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/extendedHistory' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "reportId": 789012,
    "reportTitle": "Extended Report",
    "reportSubject": "Extended Report Details",
    "startTime": "2024-11-14T10:00:00Z",
    "endTime": "2024-11-14T10:05:00Z",
    "automated": true,
    "cardCount": 5,
    "attachmentCount": 2,
    "attachmentSize": 1024000,
    "emailSize": 1536000,
    "status": "success",
    "ownerId": 901234,
    "recipientCount": 10,
    "resourceType": "PAGE",
    "resourceId": 345678,
    "resourceName": "Sales Dashboard"
  }
]

Rerun Failed Scheduled Reports

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/failures/rerun
Query Parameters:
NameTypeRequiredDescription
startintegertrueStart timestamp
endintegertrueEnd timestamp
Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/failures/rerun' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{}

Get Report History

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/history
Query Parameters:
NameTypeRequiredDefaultDescriptionEnum Values
filterstringfalse”USER”Filter type-
limitintegerfalse100Number of items to return-
skipintegerfalse0Number of items to skip-
orderBystringfalse”startTime”Field to sort byreportTitle, startTime, endTime, automated, cardCount, attachmentCount, attachmentSize, emailSize
isAscendingbooleanfalsefalseSort order-
includeRecipientInfobooleanfalsefalseInclude recipient information-
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/history' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "reportId": 789012,
    "reportTitle": "History Report",
    "startTime": "2024-11-14T10:00:00Z",
    "endTime": "2024-11-14T10:05:00Z",
    "automated": true,
    "cardCount": 5,
    "status": "success",
    "recipients": [
      {
        "userId": 901234,
        "displayName": "John Doe",
        "emailAddress": "john.doe@example.com"
      }
    ]
  }
]

Get Report History by ID

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/history/{id}
Path Parameters:
NameTypeRequiredDescription
idintegertrueHistory entry ID
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/history/123456' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{
  "id": 123456,
  "reportTitle": "Specific History Report",
  "startTime": "2024-11-14T10:00:00Z",
  "endTime": "2024-11-14T10:05:00Z",
  "status": "success"
}

Search Report History

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/history/search
Query Parameters:
NameTypeRequiredDefaultDescriptionEnum Values
filterstringfalse”USER”Filter type-
limitintegerfalse100Number of items to return-
skipintegerfalse0Number of items to skip-
orderBystringfalse”startTime”Field to sort byreportTitle, startTime, endTime, automated, cardCount, attachmentCount, attachmentSize, emailSize
isAscendingbooleanfalsefalseSort order-
Request Body: ReportLogSearchCriteria object Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/history/search' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '{
  "includeTitleClause": true,
  "titleSearchText": "Sales",
  "includeStatusClause": true,
  "status": "success",
  "includeTypeClause": true,
  "isAutomated": true,
  "includeScheduleIdClause": false
}'
Responses:
[
  {
    "id": 123456,
    "reportTitle": "Sales Report",
    "startTime": "2024-11-14T10:00:00Z",
    "endTime": "2024-11-14T10:05:00Z",
    "automated": true,
    "status": "success"
  }
]

Get Misconfigured Reports

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/misconfigured
Query Parameters:
NameTypeRequiredDefaultDescription
limitintegerfalse100Number of items to return
skipintegerfalse0Number of items to skip
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/misconfigured' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "title": "Misconfigured Report",
    "schedule": {
      "frequency": "MONTHLY",
      "enabled": false
    },
    "active": false
  }
]

Get Resources with Reports

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/resources
Query Parameters:
NameTypeRequiredDefaultDescription
limitintegerfalse100Number of items to return
skipintegerfalse0Number of items to skip
titlestringfalse""Filter by title
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/resources' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "resourceId": 123456,
    "title": "Sales Dashboard",
    "type": "PAGE"
  }
]

Get Report Schedules by Resource ID

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/resources/{resourceType}/{resourceId}
Path Parameters:
NameTypeRequiredDescriptionEnum Values
resourceTypestringtrueType of resourceOPEN, PAGE, CARD, REPORT
resourceIdintegertrueID of the resource-
Query Parameters:
NameTypeRequiredDefaultDescription
showAllbooleanfalsefalseShow all schedules
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/resources/PAGE/123456' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "title": "Resource Report",
    "schedule": {
      "frequency": "WEEKLY",
      "enabled": true
    }
  }
]

Get Report Schedules Map

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/sortby
Query Parameters:
NameTypeRequiredDefaultDescriptionEnum Values
filterstringfalse”USER”Filter type-
titlestringfalse""Filter by title-
limitintegerfalse0Number of items to return-
skipintegerfalse0Number of items to skip-
orderBystringfalse”startDate”Field to sort bystartDate, nextRunDate, title
isAscendingbooleanfalsefalseSort order-
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/sortby' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
[
  {
    "id": 123456,
    "title": "Sales Report",
    "schedule": {
      "frequency": "WEEKLY",
      "enabled": true
    }
  }
]

Get Report Schedule by View ID

Playground

Method: GET
Endpoint: /api/content/v1/reportschedules/views/{viewId}
Path Parameters:
NameTypeRequiredDescription
viewIdintegertrueID of the view
Example:
curl --request GET \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/views/123456' \
  --header 'X-DOMO-Developer-Token: Bearer <token>'
Responses:
{
  "id": 123456,
  "title": "View Report",
  "schedule": {
    "frequency": "WEEKLY",
    "enabled": true
  }
}

Send Report Now by View ID

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/views/{viewId}/sendNow
Path Parameters:
NameTypeRequiredDescription
viewIdintegertrueID of the view
Query Parameters:
NameTypeRequiredDescription
attachmentIncludebooleanfalseInclude attachments
Request Body: Array of ReportScheduleRecipient objects Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/views/123456/sendNow' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '[
  {
    "type": "EMAIL",
    "value": "user@example.com"
  }
]'
Responses:
{}

Send Report Now with Parameters by View ID

Playground

Method: POST
Endpoint: /api/content/v1/reportschedules/views/{viewId}/sendNowWithParams
Path Parameters:
NameTypeRequiredDescription
viewIdintegertrueID of the view
Query Parameters:
NameTypeRequiredDescription
attachmentIncludebooleanfalseInclude attachments
Request Body: ResourceSendNowInfo object Example:
curl --request POST \
  --url 'https://{instance}.domo.com/api/content/v1/reportschedules/views/123456/sendNowWithParams' \
  --header 'Content-Type: application/json' \
  --header 'X-DOMO-Developer-Token: Bearer <token>' \
  --data '{
  "recipients": [
    {
      "type": "EMAIL",
      "value": "user@example.com"
    }
  ],
  "alertActionId": 789012,
  "emailParams": {
    "param1": "value1"
  }
}'
Responses:
{}