Skip to content
WP EngineDocumentation

Schedule Site Reports with the Hosting API

Use the WP Engine Hosting API to schedule recurring Site Reports for a production environment. You can choose which report sections to include, apply an existing custom branding template, configure recipients, and verify that the generated PDF was delivered successfully.

Before you create a Site Report schedule, make sure the environment meets the following requirements:

  • The environment must be a production environment.
  • A custom domain must have been connected to the environment for at least two days. This allows enough time for the data required to populate the Site Report to become available.
  • Each environment can have a maximum of three active Site Report schedules.
  • Site Reports can be scheduled to run weekly, every two weeks, or monthly.

If you have a Premium or Agency plan, you can apply custom branding to a Site Report, including your logo, brand color, and company name. You can also remove references to WP Engine from report content and deliver reports to any email address.

On other plans, reports use WP Engine branding and can only be delivered to email addresses associated with users on your account.

  • Reports - Refers to the actual PDF file generated when a Site Report is run at a scheduled time.
  • Schedules - These are the active scheduled report runs for a given environment. Each schedule includes all of the information needed to create and email a report. Each environment can have a maximum of three schedules.
  • Templates - They contain branding and report content information. These are reusable and can be used to create new schedules with the same branding and content as used in previous schedules.
  • Recipients - The email addresses of the people a scheduled Site Report is sent to.

1. Create a Site Report template (optional)

Section titled “1. Create a Site Report template (optional)”

If you want to apply reusable custom branding to your scheduled reports, first create a Site Report template in the WP Engine User Portal.

Log in to the WP Engine User Portal and create a one-time Site Report. Add your preferred branding and company name, then select Save as template on the Report settings page.

For more information, see the Site Report Support documentation.

After you create a template, you can reuse it for multiple Site Report schedules within the same account.

If you want to apply an existing template to your scheduled report, retrieve its template ID using the List report templates endpoint.

Skip this step if you want to use the default WP Engine branding.

Example request:

List report Templates
# Replace 12345 with your account ID
curl -X GET \
--url "https://api.wpengineapi.com/v1/site_reports/templates?account_id=12345" \
-u "$WPE_API_USER_ID:$WPE_API_PASSWORD"

The response includes the templates available to your account.

For example:

{
"templates": [
{
"template_uuid": "12345678-90ab-cdef-1234-567890abcdab",
"template_name": "Quick Data Template"
}
]
}

Copy the template_uuid value for the template you want to use. You will add this value when you create the Site Report schedule.

For the complete response schema and available fields, see the List report templates API reference.

Use the List report sections endpoint to retrieve the sections that can be included in a Site Report.

Example request:

List report Sections
curl -X GET \
--url "https://api.wpengineapi.com/v1/site_reports/sections" \
-u "$WPE_API_USER_ID:$WPE_API_PASSWORD"

The response includes the available report sections.

For example:

{
"sections": [
{
"name": "cover"
},
{
"name": "overview"
},
{
"name": "plugins"
}
]
}

Note the name value for each section you want to include in the report. You will add these values to the sections array when you create the schedule.

The sections you specify when creating the schedule override any default sections configured in the selected template.

For the complete list of section properties, see the List report sections API reference.

Use the Create a report schedule endpoint to create the recurring Site Report schedule.

Configure the request with:

  • The ID of the site you want to report on.
  • A title for the schedule.
  • The date when the first report should run.
  • The report frequency.
  • The report recipients.
  • The report section name values you selected in the previous step.
  • The template_uuid of the template you want to apply, if applicable.

Leave template_uuid empty if you want to use the default WP Engine branding.

Example request:

Create a report schedule
# Replace 12345 with your site ID
curl -X POST "https://api.wpengineapi.com/v1/site_reports/schedules" \
-u "$WPE_API_USER_ID:$WPE_API_PASSWORD" \
-H "Content-Type: application/json" \
-d '{
"site_id": "12345",
"title": "Sample schedule",
"next_scheduled_date": "2026-07-30T00:00:00.000Z",
"frequency": {
"unit": "DAYS",
"value": 7
},
"recipients": [
{
"name": "John Doe",
"email": "example@example.com"
}
],
"sections": [
{
"name": "cover"
},
{
"name": "overview"
},
{
"name": "themes"
}
],
"template_uuid": ""
}'

A successful request returns:

{
"message": "OK!"
}

5. Verify the schedule and generated report

Section titled “5. Verify the schedule and generated report”

After you create the schedule, verify that it was created successfully and that the report generates as expected.

  1. Call the List report schedules endpoint and confirm that your new schedule appears in the response.
  2. Confirm that the schedule configuration, recipients, frequency, and report sections match your intended settings.
  3. Wait for the configured next_scheduled_date to pass.
  4. Call the List site reports endpoint to confirm that the scheduled report was generated successfully.
  5. Use the report’s download_url to open the generated PDF.
  6. Verify that the PDF contains the expected sections and branding.
  7. Confirm that the report was delivered to the configured recipient email addresses.

Your Site Report schedule will continue generating reports according to the configured frequency.

Last updated: