Skip to content
WP EngineDocumentation

Update a report schedule

PATCH
/site_reports/schedules/{schedule_id}
curl --request PATCH \
--url https://api.wpengineapi.com/v1/site_reports/schedules/123e4567-e89b-12d3-a456-426614174000 \
--header 'Authorization: Basic <credentials>' \
--header 'Content-Type: application/json' \
--data '{ "title": "Monthly Site Performance Report", "next_scheduled_date": "2025-02-01T00:00:00.000Z", "template_uuid": "123e4567-e89b-12d3-a456-426614174000", "frequency": { "value": 7, "unit": "DAYS" }, "recipients": [ { "name": "Jane Doe", "email": "jane@example.com" } ], "sections": [ { "name": "cover" } ] }'

Updates an existing report schedule.

Reports run monthly, weekly or every two weeks, based on the schedule’s frequency:

  • Monthly: set unit to MONTHLY and value to the day of the month (1-31). For example, 15 runs the report on the 15th of every month.
  • Weekly or every two weeks: set unit to DAYS and value to 7 or 14. The day of the week is determined by next_scheduled_date. For example, if it’s a Tuesday and value is 7, the report runs every Tuesday.

Limitations & Warnings

  • If a monthly schedule is set to the 29th, 30th or 31st and that date doesn’t exist in a given month, the report runs on the last day of that month.
schedule_id
required
string format: uuid

ID of the schedule to update

Example
123e4567-e89b-12d3-a456-426614174000
Media typeapplication/json
object
title

Title for the scheduled report

string
Example
Monthly Site Performance Report
next_scheduled_date

ISO 8601 datetime for the next report generation

string
Example
2025-02-01T00:00:00.000Z
template_uuid

UUID of the report template to use

string format: uuid
Example
123e4567-e89b-12d3-a456-426614174000
frequency

Report generation frequency. For DAYS, set value to 7 (weekly) or 14 (biweekly). For MONTHLY, set value to the day of the month (1-31).

object
value
required

Frequency value. For DAYS, value is 7 or 14. For MONTHLY, value is the day of the month (1-31).

integer
Example
7
unit
required

Frequency unit. ‘DAYS’ for weekly or biweekly reports, ‘MONTHLY’ for monthly reports.

string
Allowed values: DAYS MONTHLY
Example
DAYS
recipients

List of recipients for the report

Array<object>
object
name
string
Example
Jane Doe
email
required
string format: email
Example
jane@example.com
sections

Sections to include in the report. Valid section names depend on the template (e.g. cover, overview, usage, themes). Use GET /site_reports/templates to discover available sections for a given template.

Array<object>
object
name
string
Example
cover

Returns a confirmation message.

Media typeapplication/json
object
message
string
Example
{
"message": "Schedule updated successfully"
}

Bad Request

Media typeapplication/json
object
message
required

A message regarding the error that occurred on the server

string
documentation_url

(Optional) A URL where documentation regarding this specific error can be found

string
errors

An array of error objects describing specific errors that arose when servicing the request

Array<object>
object
resource
required

The name of the resource that was being processed when the error occurred

string
field
required

(Optional) The specific field associated with the error

string
type
required

(Optional) A type associated with the error. invalid_value, access_error, value_unavailable

string
code
required

(Optional) A machine code relating to the error that occurred with the field and resource

string
message
required

(Optional) A human-readable message relating to the error that occurred with the field and resource

string
Example
{
"message": "Invalid request.",
"errors": [
{
"resource": "Resource",
"field": "field_name",
"type": "invalid_value",
"code": "invalid",
"message": "The value is invalid."
}
]
}

Authentication Error

Media typeapplication/json
object
message
required

A message regarding the error that occurred on the server

string
documentation_url

(Optional) A URL where documentation regarding this specific error can be found

string
Example
{
"message": "Bad Credentials"
}

Not authorized

Media typeapplication/json
object
message
required

A message regarding the error that occurred on the server

string
documentation_url

(Optional) A URL where documentation regarding this specific error can be found

string
Example
{
"message": "You don't have permission to perform that action"
}

Not found

Media typeapplication/json
object
message
required

A message regarding the error that occurred on the server

string
documentation_url

(Optional) A URL where documentation regarding this specific error can be found

string
Example
{
"message": "Not Found"
}

Too many requests

Internal Server Error

Media typeapplication/json
object
message
required

A message regarding the error that occurred on the server

string
Example
{
"message": "An unexpected error occurred, please try again in a few minutes"
}

An invalid response was received from an upstream server

Service unavailable