You can also view Looker’s interactive API documentation on the Looker Developer Portal or by using the API Explorer extension.
Scheduled Plans for Space beta
Implementation Notes
Get Scheduled Plans for a Space.
Returns scheduled plans owned by the caller for a given space id.
Response Class
array
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
space_id | true | Space Id | string | string |
fields | false | Requested fields. | string | string |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Delete Scheduled Plan beta
Implementation Notes
Delete a Scheduled Plan.
Normal users can only delete their own scheduled plans. Admins can delete other users’ scheduled plans. This delete cannot be undone.
Response Class
None
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
scheduled_plan_id | true | Scheduled Plan Id | string | string |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
429 | Too Many Requests |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
204 | Successfully deleted. | string |
Update Scheduled Plan beta
Implementation Notes
Update a Scheduled Plan.
Admins can update other users’ Scheduled Plans.
Note: Any scheduled plan destinations specified in an update will replace all scheduled plan destinations currently defined for the scheduled plan.
For Example: If a scheduled plan has destinations A, B, and C, and you call update on this scheduled plan specifying only B in the destinations, then destinations A and C will be deleted by the update.
Updating a scheduled plan to assign null or an empty array to the scheduled_plan_destinations property is an error, as a scheduled plan must always have at least one destination.
If you omit the scheduled_plan_destinations property from the object passed to update, then the destinations defined on the original scheduled plan will remain unchanged.
Email Permissions:
For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see Email Domain Whitelist for Scheduled Looks.
Scheduled Plan Destination Formats
Scheduled plan destinations must specify the data format to produce and send to the destination.
Formats:
format | Description |
---|---|
json | A JSON object containing a data property which contains an array of JSON objects, one per row. No metadata. |
json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query |
inline_json | Same as the JSON format, except that the data property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn’t have to re-encode the JSON row data in order to pass it on to its ultimate destination. |
csv | Comma separated values with a header |
txt | Tab separated values with a header |
html | Simple html |
xlsx | MS Excel spreadsheet |
wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document |
assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document |
wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image |
Valid formats vary by destination type and source object. wysiwyg_pdf
is only valid for dashboards, for example.
Response Class
ScheduledPlanDestination {
UserPublic {
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
scheduled_plan_id | true | Scheduled Plan Id | string | string |
body | true | Scheduled Plan | body |
ScheduledPlan {
name (string): Name of this scheduled plan, user_id (string): User Id which owns this scheduled plan, run_as_recipient (boolean): Whether schedule is run as recipient (only applicable for email recipients), enabled (boolean): Whether the ScheduledPlan is enabled, look_id (string): Id of a look, dashboard_id (string): Id of a dashboard, lookml_dashboard_id (string): Id of a LookML dashboard, filters_string (string): Query string to run look or dashboard with, dashboard_filters (string): (DEPRECATED) Alias for filters_string field, require_results (boolean): Delivery should occur if running the dashboard or look returns results, require_no_results (boolean): Delivery should occur if the dashboard look does not return results, require_change (boolean): Delivery should occur if data have changed since the last run, send_all_results (boolean): Will run an unlimited query and send all results., crontab (string): Vixie-Style crontab specification when to run, datagroup (string): Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string), timezone (string): Timezone for interpreting the specified crontab (default is Looker instance timezone), query_id (string): Query id, scheduled_plan_destination (Array[ScheduledPlanDestination]): Scheduled plan destinations, run_once (boolean): Whether the plan in question should only be run once (usually for testing), include_links (boolean): Whether links back to Looker should be included in this ScheduledPlan, pdf_paper_size (string): The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5"., pdf_landscape (boolean): Whether the PDF should be formatted for landscape orientation, embed (boolean): Whether this schedule is in an embed context or not, color_theme (string): Color scheme of the dashboard if applicable, long_tables (boolean): Whether or not to expand table vis to full length, inline_table_width (long): The pixel width at which we render the inline table visualizations, id (string, read-only): Unique Id, created_at (date-time, read-only): Date and time when ScheduledPlan was created, updated_at (date-time, read-only): Date and time when ScheduledPlan was last updated, title (string, read-only): Title, user (UserPublic, read-only): User who owns this ScheduledPlan, next_run_at (date-time, read-only): When the ScheduledPlan will next run (null if running once), last_run_at (date-time, read-only): When the ScheduledPlan was last run, can (object, read-only): Operations the current user is able to perform on this object }ScheduledPlanDestination { id (string, read-only): Unique Id, scheduled_plan_id (string): Id of a scheduled plan you own, format (string): The data format to send to the given destination. Supported formats vary by destination, but include: "txt", "csv", "inline_json", "json", "json_detail", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png", apply_formatting (boolean): Are values formatted? (containing currency symbols, digit separators, etc., apply_vis (boolean): Whether visualization options are applied to the results., address (string): Address for recipient. For email e.g. 'user@example.com'. For webhooks e.g. 'https://domain/path'. For Amazon S3 e.g. 's3://bucket-name/path/'. For SFTP e.g. 'sftp://host-name/path/'. , looker_recipient (boolean, read-only): Whether the recipient is a Looker user on the current instance (only applicable for email recipients), type (string): Type of the address ('email', 'webhook', 's3', or 'sftp'), parameters (string): JSON object containing parameters for external scheduling. For Amazon S3, this requires keys and values for access_key_id and region. For SFTP, this requires a key and value for username., secret_parameters (string): (Write-Only) JSON object containing secret parameters for external scheduling. For Amazon S3, this requires a key and value for secret_access_key. For SFTP, this requires a key and value for password., message (string): Optional message to be included in scheduled emails }UserPublic { can (object, read-only): Operations the current user is able to perform on this object, id (string, read-only): Unique Id, first_name (string, read-only): First Name, last_name (string, read-only): Last Name, display_name (string, read-only): Full name for display (available only if both first_name and last_name are set), avatar_url (string, read-only): URL for the avatar image (may be generic), url (string, read-only): Link to get this item }
|
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
422 | Validation Error |
ValidationError {
message (string, read-only, required): Error details, errors (Array[ValidationErrorDetail], read-only): Error detail array, documentation_url (string, read-only, required): Documentation link }ValidationErrorDetail { field (string, read-only): Field with error, code (string, read-only): Error code, message (string, read-only): Error info message, documentation_url (string, read-only, required): Documentation link }
|
429 | Too Many Requests |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Get Scheduled Plan beta
Implementation Notes
Get Information About a Scheduled Plan.
Admins can fetch information about other users’ Scheduled Plans.
Response Class
ScheduledPlanDestination {
UserPublic {
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
scheduled_plan_id | true | Scheduled Plan Id | string | string |
fields | false | Requested fields. | string | string |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Create Scheduled Plan beta
Implementation Notes
Create a Scheduled Plan.
Create a scheduled plan to render a Look or Dashboard on a recurring schedule.
To create a scheduled plan, you MUST provide values for the following fields:
name
and
look_id
, dashboard_id
, lookml_dashboard_id
, or query_id
and
cron_tab
or datagroup
and
at least one scheduled_plan_destination
A scheduled plan MUST have at least one scheduled_plan_destination defined.
When look_id
is set, require_no_results
, require_results
, and require_change
are all required.
If create_scheduled_plan
fails with a 422 error, be sure to look at the error messages in the response which will explain exactly what fields are missing or values that are incompatible.
The queries that provide the data for the look or dashboard are run in the context of user account that owns the scheduled plan.
When run_as_recipient
is false
or not specified, the queries that provide the data for the
look or dashboard are run in the context of user account that owns the scheduled plan.
When run_as_recipient
is true
and all the email recipients are Looker user accounts, the
queries are run in the context of each recipient, so different recipients may see different
data from the same scheduled render of a look or dashboard. For more details, see Run As Recipient.
Admins can create and modify scheduled plans on behalf of other users by specifying a user id. Non-admin users may not create or modify scheduled plans by or for other users.
Email Permissions:
For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see Email Domain Whitelist for Scheduled Looks.
Scheduled Plan Destination Formats
Scheduled plan destinations must specify the data format to produce and send to the destination.
Formats:
format | Description |
---|---|
json | A JSON object containing a data property which contains an array of JSON objects, one per row. No metadata. |
json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query |
inline_json | Same as the JSON format, except that the data property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn’t have to re-encode the JSON row data in order to pass it on to its ultimate destination. |
csv | Comma separated values with a header |
txt | Tab separated values with a header |
html | Simple html |
xlsx | MS Excel spreadsheet |
wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document |
assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document |
wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image |
Valid formats vary by destination type and source object. wysiwyg_pdf
is only valid for dashboards, for example.
Response Class
ScheduledPlanDestination {
UserPublic {
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
body | true | Scheduled Plan | body |
ScheduledPlan {
name (string): Name of this scheduled plan, user_id (string): User Id which owns this scheduled plan, run_as_recipient (boolean): Whether schedule is run as recipient (only applicable for email recipients), enabled (boolean): Whether the ScheduledPlan is enabled, look_id (string): Id of a look, dashboard_id (string): Id of a dashboard, lookml_dashboard_id (string): Id of a LookML dashboard, filters_string (string): Query string to run look or dashboard with, dashboard_filters (string): (DEPRECATED) Alias for filters_string field, require_results (boolean): Delivery should occur if running the dashboard or look returns results, require_no_results (boolean): Delivery should occur if the dashboard look does not return results, require_change (boolean): Delivery should occur if data have changed since the last run, send_all_results (boolean): Will run an unlimited query and send all results., crontab (string): Vixie-Style crontab specification when to run, datagroup (string): Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string), timezone (string): Timezone for interpreting the specified crontab (default is Looker instance timezone), query_id (string): Query id, scheduled_plan_destination (Array[ScheduledPlanDestination]): Scheduled plan destinations, run_once (boolean): Whether the plan in question should only be run once (usually for testing), include_links (boolean): Whether links back to Looker should be included in this ScheduledPlan, pdf_paper_size (string): The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5"., pdf_landscape (boolean): Whether the PDF should be formatted for landscape orientation, embed (boolean): Whether this schedule is in an embed context or not, color_theme (string): Color scheme of the dashboard if applicable, long_tables (boolean): Whether or not to expand table vis to full length, inline_table_width (long): The pixel width at which we render the inline table visualizations, id (string, read-only): Unique Id, created_at (date-time, read-only): Date and time when ScheduledPlan was created, updated_at (date-time, read-only): Date and time when ScheduledPlan was last updated, title (string, read-only): Title, user (UserPublic, read-only): User who owns this ScheduledPlan, next_run_at (date-time, read-only): When the ScheduledPlan will next run (null if running once), last_run_at (date-time, read-only): When the ScheduledPlan was last run, can (object, read-only): Operations the current user is able to perform on this object }ScheduledPlanDestination { id (string, read-only): Unique Id, scheduled_plan_id (string): Id of a scheduled plan you own, format (string): The data format to send to the given destination. Supported formats vary by destination, but include: "txt", "csv", "inline_json", "json", "json_detail", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png", apply_formatting (boolean): Are values formatted? (containing currency symbols, digit separators, etc., apply_vis (boolean): Whether visualization options are applied to the results., address (string): Address for recipient. For email e.g. 'user@example.com'. For webhooks e.g. 'https://domain/path'. For Amazon S3 e.g. 's3://bucket-name/path/'. For SFTP e.g. 'sftp://host-name/path/'. , looker_recipient (boolean, read-only): Whether the recipient is a Looker user on the current instance (only applicable for email recipients), type (string): Type of the address ('email', 'webhook', 's3', or 'sftp'), parameters (string): JSON object containing parameters for external scheduling. For Amazon S3, this requires keys and values for access_key_id and region. For SFTP, this requires a key and value for username., secret_parameters (string): (Write-Only) JSON object containing secret parameters for external scheduling. For Amazon S3, this requires a key and value for secret_access_key. For SFTP, this requires a key and value for password., message (string): Optional message to be included in scheduled emails }UserPublic { can (object, read-only): Operations the current user is able to perform on this object, id (string, read-only): Unique Id, first_name (string, read-only): First Name, last_name (string, read-only): Last Name, display_name (string, read-only): Full name for display (available only if both first_name and last_name are set), avatar_url (string, read-only): URL for the avatar image (may be generic), url (string, read-only): Link to get this item }
|
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
409 | Resource Already Exists |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
422 | Validation Error |
ValidationError {
message (string, read-only, required): Error details, errors (Array[ValidationErrorDetail], read-only): Error detail array, documentation_url (string, read-only, required): Documentation link }ValidationErrorDetail { field (string, read-only): Field with error, code (string, read-only): Error code, message (string, read-only): Error info message, documentation_url (string, read-only, required): Documentation link }
|
429 | Too Many Requests |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Get All Scheduled Plans beta
Implementation Notes
List All Scheduled Plans.
Returns all scheduled plans which belong to the caller or given user.
If no user_id is provided, this function returns the scheduled plans owned by the caller.
To list all schedules for all users, pass all_users=true
.
The caller must have see_schedules
permission to see other users’ scheduled plans.
Response Class
array
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
user_id | false | Return scheduled plans belonging to this user_id. If not provided, returns scheduled plans owned by the caller. | string | string |
fields | false | Comma delimited list of field names. If provided, only the fields specified will be included in the response | string | string |
all_users | false | Return scheduled plans belonging to all users (caller needs see_schedules permission) | boolean | boolean |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
422 | Validation Error |
ValidationError {
message (string, read-only, required): Error details, errors (Array[ValidationErrorDetail], read-only): Error detail array, documentation_url (string, read-only, required): Documentation link }ValidationErrorDetail { field (string, read-only): Field with error, code (string, read-only): Error code, message (string, read-only): Error info message, documentation_url (string, read-only, required): Documentation link }
|
Run Scheduled Plan Once beta
Implementation Notes
Run a Scheduled Plan Immediately.
Create a scheduled plan that runs only once, and immediately.
This can be useful for testing a Scheduled Plan before committing to a production schedule.
Admins can create scheduled plans on behalf of other users by specifying a user id.
This API is rate limited to prevent it from being used for relay spam or DoS attacks
Email Permissions:
For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see Email Domain Whitelist for Scheduled Looks.
Scheduled Plan Destination Formats
Scheduled plan destinations must specify the data format to produce and send to the destination.
Formats:
format | Description |
---|---|
json | A JSON object containing a data property which contains an array of JSON objects, one per row. No metadata. |
json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query |
inline_json | Same as the JSON format, except that the data property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn’t have to re-encode the JSON row data in order to pass it on to its ultimate destination. |
csv | Comma separated values with a header |
txt | Tab separated values with a header |
html | Simple html |
xlsx | MS Excel spreadsheet |
wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document |
assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document |
wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image |
Valid formats vary by destination type and source object. wysiwyg_pdf
is only valid for dashboards, for example.
Response Class
ScheduledPlanDestination {
UserPublic {
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
body | true | Scheduled Plan | body |
ScheduledPlan {
name (string): Name of this scheduled plan, user_id (string): User Id which owns this scheduled plan, run_as_recipient (boolean): Whether schedule is run as recipient (only applicable for email recipients), enabled (boolean): Whether the ScheduledPlan is enabled, look_id (string): Id of a look, dashboard_id (string): Id of a dashboard, lookml_dashboard_id (string): Id of a LookML dashboard, filters_string (string): Query string to run look or dashboard with, dashboard_filters (string): (DEPRECATED) Alias for filters_string field, require_results (boolean): Delivery should occur if running the dashboard or look returns results, require_no_results (boolean): Delivery should occur if the dashboard look does not return results, require_change (boolean): Delivery should occur if data have changed since the last run, send_all_results (boolean): Will run an unlimited query and send all results., crontab (string): Vixie-Style crontab specification when to run, datagroup (string): Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string), timezone (string): Timezone for interpreting the specified crontab (default is Looker instance timezone), query_id (string): Query id, scheduled_plan_destination (Array[ScheduledPlanDestination]): Scheduled plan destinations, run_once (boolean): Whether the plan in question should only be run once (usually for testing), include_links (boolean): Whether links back to Looker should be included in this ScheduledPlan, pdf_paper_size (string): The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5"., pdf_landscape (boolean): Whether the PDF should be formatted for landscape orientation, embed (boolean): Whether this schedule is in an embed context or not, color_theme (string): Color scheme of the dashboard if applicable, long_tables (boolean): Whether or not to expand table vis to full length, inline_table_width (long): The pixel width at which we render the inline table visualizations, id (string, read-only): Unique Id, created_at (date-time, read-only): Date and time when ScheduledPlan was created, updated_at (date-time, read-only): Date and time when ScheduledPlan was last updated, title (string, read-only): Title, user (UserPublic, read-only): User who owns this ScheduledPlan, next_run_at (date-time, read-only): When the ScheduledPlan will next run (null if running once), last_run_at (date-time, read-only): When the ScheduledPlan was last run, can (object, read-only): Operations the current user is able to perform on this object }ScheduledPlanDestination { id (string, read-only): Unique Id, scheduled_plan_id (string): Id of a scheduled plan you own, format (string): The data format to send to the given destination. Supported formats vary by destination, but include: "txt", "csv", "inline_json", "json", "json_detail", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png", apply_formatting (boolean): Are values formatted? (containing currency symbols, digit separators, etc., apply_vis (boolean): Whether visualization options are applied to the results., address (string): Address for recipient. For email e.g. 'user@example.com'. For webhooks e.g. 'https://domain/path'. For Amazon S3 e.g. 's3://bucket-name/path/'. For SFTP e.g. 'sftp://host-name/path/'. , looker_recipient (boolean, read-only): Whether the recipient is a Looker user on the current instance (only applicable for email recipients), type (string): Type of the address ('email', 'webhook', 's3', or 'sftp'), parameters (string): JSON object containing parameters for external scheduling. For Amazon S3, this requires keys and values for access_key_id and region. For SFTP, this requires a key and value for username., secret_parameters (string): (Write-Only) JSON object containing secret parameters for external scheduling. For Amazon S3, this requires a key and value for secret_access_key. For SFTP, this requires a key and value for password., message (string): Optional message to be included in scheduled emails }UserPublic { can (object, read-only): Operations the current user is able to perform on this object, id (string, read-only): Unique Id, first_name (string, read-only): First Name, last_name (string, read-only): Last Name, display_name (string, read-only): Full name for display (available only if both first_name and last_name are set), avatar_url (string, read-only): URL for the avatar image (may be generic), url (string, read-only): Link to get this item }
|
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
409 | Resource Already Exists |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
422 | Validation Error |
ValidationError {
message (string, read-only, required): Error details, errors (Array[ValidationErrorDetail], read-only): Error detail array, documentation_url (string, read-only, required): Documentation link }ValidationErrorDetail { field (string, read-only): Field with error, code (string, read-only): Error code, message (string, read-only): Error info message, documentation_url (string, read-only, required): Documentation link }
|
429 | Too Many Requests |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Scheduled Plans for Look beta
Implementation Notes
Get Scheduled Plans for a Look.
Returns all scheduled plans for a look which belong to the caller or given user.
If no user_id is provided, this function returns the scheduled plans owned by the caller.
To list all schedules for all users, pass all_users=true
.
The caller must have see_schedules
permission to see other users’ scheduled plans.
Response Class
array
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
look_id | true | Look Id | string | string |
user_id | false | User Id (default is requesting user if not specified) | string | string |
fields | false | Requested fields. | string | string |
all_users | false | Return scheduled plans belonging to all users for the look | boolean | boolean |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Scheduled Plans for Dashboard beta
Implementation Notes
Get Scheduled Plans for a Dashboard.
Returns all scheduled plans for a dashboard which belong to the caller or given user.
If no user_id is provided, this function returns the scheduled plans owned by the caller.
To list all schedules for all users, pass all_users=true
.
The caller must have see_schedules
permission to see other users’ scheduled plans.
Response Class
array
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
dashboard_id | true | Dashboard Id | string | string |
user_id | false | User Id (default is requesting user if not specified) | string | string |
all_users | false | Return scheduled plans belonging to all users for the dashboard | boolean | boolean |
fields | false | Requested fields. | string | string |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Scheduled Plans for LookML Dashboard beta
Implementation Notes
Get Scheduled Plans for a LookML Dashboard.
Returns all scheduled plans for a LookML Dashboard which belong to the caller or given user.
If no user_id is provided, this function returns the scheduled plans owned by the caller.
To list all schedules for all users, pass all_users=true
.
The caller must have see_schedules
permission to see other users’ scheduled plans.
Response Class
array
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
lookml_dashboard_id | true | LookML Dashboard Id | string | string |
user_id | false | User Id (default is requesting user if not specified) | string | string |
fields | false | Requested fields. | string | string |
all_users | false | Return scheduled plans belonging to all users for the dashboard | boolean | boolean |
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
Run Scheduled Plan Once by Id beta
Implementation Notes
Run a Scheduled Plan By Id Immediately.
This function creates a run-once schedule plan based on an existing scheduled plan, applies modifications (if any) to the new scheduled plan, and runs the new schedule plan immediately. This can be useful for testing modifications to an existing scheduled plan before committing to a production schedule.
This function internally performs the following operations:
- Copies the properties of the existing scheduled plan into a new scheduled plan
- Copies any properties passed in the JSON body of this request into the new scheduled plan (replacing the original values)
- Creates the new scheduled plan
- Runs the new scheduled plan
The original scheduled plan is not modified by this operation. Admins can create, modify, and run scheduled plans on behalf of other users by specifying a user id. Non-admins can only create, modify, and run their own scheduled plans.
Email Permissions:
For details about permissions required to schedule delivery to email and the safeguards Looker offers to protect against sending to unauthorized email destinations, see Email Domain Whitelist for Scheduled Looks.
Scheduled Plan Destination Formats
Scheduled plan destinations must specify the data format to produce and send to the destination.
Formats:
format | Description |
---|---|
json | A JSON object containing a data property which contains an array of JSON objects, one per row. No metadata. |
json_detail | Row data plus metadata describing the fields, pivots, table calcs, and other aspects of the query |
inline_json | Same as the JSON format, except that the data property is a string containing JSON-escaped row data. Additional properties describe the data operation. This format is primarily used to send data to web hooks so that the web hook doesn’t have to re-encode the JSON row data in order to pass it on to its ultimate destination. |
csv | Comma separated values with a header |
txt | Tab separated values with a header |
html | Simple html |
xlsx | MS Excel spreadsheet |
wysiwyg_pdf | Dashboard rendered in a tiled layout to produce a PDF document |
assembled_pdf | Dashboard rendered in a single column layout to produce a PDF document |
wysiwyg_png | Dashboard rendered in a tiled layout to produce a PNG image |
Valid formats vary by destination type and source object. wysiwyg_pdf
is only valid for dashboards, for example.
This API is rate limited to prevent it from being used for relay spam or DoS attacks
Response Class
ScheduledPlanDestination {
UserPublic {
Parameters
Parameter | Required? | Description | Parameter Type | Data Type |
---|---|---|---|---|
scheduled_plan_id | true | Id of schedule plan to copy and run | string | string |
body | false | Property values to apply to the newly copied scheduled plan before running it | body |
WriteScheduledPlan {
name (string): Name of this scheduled plan, user_id (string): User Id which owns this scheduled plan, run_as_recipient (boolean): Whether schedule is run as recipient (only applicable for email recipients), enabled (boolean): Whether the ScheduledPlan is enabled, look_id (string): Id of a look, dashboard_id (string): Id of a dashboard, lookml_dashboard_id (string): Id of a LookML dashboard, filters_string (string): Query string to run look or dashboard with, dashboard_filters (string): (DEPRECATED) Alias for filters_string field, require_results (boolean): Delivery should occur if running the dashboard or look returns results, require_no_results (boolean): Delivery should occur if the dashboard look does not return results, require_change (boolean): Delivery should occur if data have changed since the last run, send_all_results (boolean): Will run an unlimited query and send all results., crontab (string): Vixie-Style crontab specification when to run, datagroup (string): Name of a datagroup; if specified will run when datagroup triggered (can't be used with cron string), timezone (string): Timezone for interpreting the specified crontab (default is Looker instance timezone), query_id (string): Query id, scheduled_plan_destination (Array[ScheduledPlanDestination]): Scheduled plan destinations, run_once (boolean): Whether the plan in question should only be run once (usually for testing), include_links (boolean): Whether links back to Looker should be included in this ScheduledPlan, pdf_paper_size (string): The size of paper the PDF should be formatted to fit. Valid values are: "letter", "legal", "tabloid", "a0", "a1", "a2", "a3", "a4", "a5"., pdf_landscape (boolean): Whether the PDF should be formatted for landscape orientation, embed (boolean): Whether this schedule is in an embed context or not, color_theme (string): Color scheme of the dashboard if applicable, long_tables (boolean): Whether or not to expand table vis to full length, inline_table_width (long): The pixel width at which we render the inline table visualizations }ScheduledPlanDestination { id (string, read-only): Unique Id, scheduled_plan_id (string): Id of a scheduled plan you own, format (string): The data format to send to the given destination. Supported formats vary by destination, but include: "txt", "csv", "inline_json", "json", "json_detail", "xlsx", "html", "wysiwyg_pdf", "assembled_pdf", "wysiwyg_png", apply_formatting (boolean): Are values formatted? (containing currency symbols, digit separators, etc., apply_vis (boolean): Whether visualization options are applied to the results., address (string): Address for recipient. For email e.g. 'user@example.com'. For webhooks e.g. 'https://domain/path'. For Amazon S3 e.g. 's3://bucket-name/path/'. For SFTP e.g. 'sftp://host-name/path/'. , looker_recipient (boolean, read-only): Whether the recipient is a Looker user on the current instance (only applicable for email recipients), type (string): Type of the address ('email', 'webhook', 's3', or 'sftp'), parameters (string): JSON object containing parameters for external scheduling. For Amazon S3, this requires keys and values for access_key_id and region. For SFTP, this requires a key and value for username., secret_parameters (string): (Write-Only) JSON object containing secret parameters for external scheduling. For Amazon S3, this requires a key and value for secret_access_key. For SFTP, this requires a key and value for password., message (string): Optional message to be included in scheduled emails }
|
Response Messages
HTTP Status Code | Reason | Response Model |
---|---|---|
400 | Bad Request |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
404 | Not Found |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
409 | Resource Already Exists |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|
422 | Validation Error |
ValidationError {
message (string, read-only, required): Error details, errors (Array[ValidationErrorDetail], read-only): Error detail array, documentation_url (string, read-only, required): Documentation link }ValidationErrorDetail { field (string, read-only): Field with error, code (string, read-only): Error code, message (string, read-only): Error info message, documentation_url (string, read-only, required): Documentation link }
|
429 | Too Many Requests |
Error {
message (string, read-only, required): Error details, documentation_url (string, read-only, required): Documentation link }
|