generate_report_now

Monitoring & Reporting Write

Generate an immediate performance report and deliver it now

Endpoint

POST https://api.adspirer.ai/api/v1/tools/generate_report_now/execute

Headers

Description

Generate an immediate performance report and deliver it now. **What it does:** - Generates a comprehensive PDF performance report immediately - Fetches latest campaign data from all connected platforms - Includes AI-powered recommendations and insights - Delivers via email, Slack, or webhook **When to use:** - "Get me my campaign performance report" - "Send me a detailed analysis of all my accounts" - "Generate a report and email it to me" - "I need my performance data now" - "Prepare a report for all my campaigns" **Report Types:** - performance_brief: Quick overview of key metrics - detailed_analysis: Deep dive with breakdowns - executive_summary: High-level summary for stakeholders **Execution time:** 2-5 minutes (async - you'll be notified when ready) **Example:** User: "Get me my detailed campaign performance for all accounts and email it to me" → Call generate_report_now with: - report_type: "detailed_analysis" - platforms: null (all platforms) - delivery_method: "email" - delivery_destination: "user@example.com"

Request body

All tool arguments are wrapped in an arguments object.

FieldTypeDescription
report_typestring optionalType of report: 'performance_brief', 'detailed_analysis', or 'executive_summary' default: "performance_brief"
platformsarray optionalPlatforms to include: 'google_ads', 'meta_ads', 'tiktok_ads', 'linkedin_ads'. Default is all connected.
account_idsarray optionalSpecific account IDs to include. Default is all accounts.
campaign_idsarray optionalSpecific campaign IDs to include. Default is all campaigns.
date_rangeobject optionalDate range with 'start_date' and 'end_date' in YYYY-MM-DD format. Default is last 7 days.
delivery_methodstring optionalHow to deliver the report: 'email', 'slack', or 'webhook' default: "email"
delivery_destinationstring optionalEmail address, Slack channel, or webhook URL. Default is user's email.
include_recommendationsboolean optionalWhether to include AI-powered recommendations in the report default: true
report_formatstring optionalOutput format: 'pdf', 'html', or 'json' default: "pdf"

Example request

{
  "arguments": {
    "report_type": "performance_brief",
    "platforms": [
      "string"
    ],
    "account_ids": [
      "string"
    ],
    "campaign_ids": [
      "string"
    ],
    "date_range": {
      "start_date": "2026-03-01",
      "end_date": "2026-03-31"
    },
    "delivery_method": "email"
  }
}

Example responses

200 — Success

{
  "success": true,
  "data": {
    "text": "(tool-specific textual output for generate_report_now)",
    "quota": {
      "used": 42,
      "limit": 150,
      "tier": "plus",
      "period_end": "2026-05-01"
    }
  },
  "tool": "generate_report_now"
}

400 — Tool-level error (bad arguments / multi-account selection)

{
  "success": false,
  "error": "You have 25 meta_ads accounts connected. Please specify which account to use by passing the ad_account_id parameter:\n  - Acme Holdings (ad_account_id=\"act_123456789\")\n  - Acme EU (ad_account_id=\"act_987654321\")",
  "is_error": true,
  "tool": "generate_report_now"
}

402 — Quota exhausted

{
  "success": false,
  "error": "\ud83d\udea8 Monthly limit reached (150/150 tool calls on Plus tier).\nUpgrade to Pro at https://adspirer.ai to keep building.",
  "is_error": true,
  "tool": "generate_report_now",
  "quota": {
    "used": 150,
    "limit": 150,
    "tier": "plus",
    "period_end": "2026-05-01",
    "upgrade_url": "https://adspirer.ai"
  }
}

Try it live


Adspirer REST API — get an API key at adspirer.ai/keys · adspirer.ai