Generate a Report
POST /reports
Submits a report generation request. Report generation is asynchronous — you receive a report_id immediately and poll for completion using GET /reports/{id}.
Request Body
string
required
The type of report to generate. Each type draws from a different combination of NeuronLens data:
call_summary— total calls, connected calls, dispositions, average duration, by campaign or date.qa_performance— QA scores broken down by agent, parameter, and campaign. Includes pass rates and trend lines.compliance_audit— compliance check results, violation log, and severity breakdown for regulatory review.agent_coaching— per-agent performance summary with lowest-scoring QA parameters and recommended focus areas.campaign_performance— full campaign-level results including contact reach rate, disposition mix, and sentiment trends.
string
required
ISO 8601 date — start of the reporting period. Example:
2024-01-01.string
required
ISO 8601 date — end of the reporting period. Example:
2024-01-31.object
Optional filters to scope the report to a subset of your data.
string
default:"json"
Output format for the report. One of:
json— structured JSON returned inline in the API response.csv— tabular CSV file available via a signed download URL.pdf— formatted PDF suitable for sharing, available via a signed download URL.
object
Optional — configure the report to run on a recurring schedule. If omitted, the report runs once and no schedule is created.
Example Request
Example Response
Fetch a Completed Report
GET /reports/{id}
Returns the status and results of a report. For csv and pdf formats, a signed download_url is included once the report is ready. For json format, the full report data is embedded inline.
Example Request
Example Response (PDF / CSV Format)
Example Response (JSON Format)
List Reports
GET /reports
Returns a paginated list of all reports generated in your workspace, ordered by creation date descending.
Query Parameters
string
Filter by report type (e.g.,
qa_performance, compliance_audit).string
Filter by report status:
generating, completed, or failed.boolean
When
true, return only scheduled (recurring) reports. When false, return only one-time reports.integer
default:"20"
Number of results per page. Maximum
100.integer
default:"0"
Number of results to skip for pagination.
Example Request
Cancel a Scheduled Report
DELETE /reports/{id}/schedule
Cancels the recurring schedule for a report. The report itself (and any previously generated runs) are preserved and still accessible via GET /reports/{id}. Only future scheduled runs are cancelled.
Example Request
Example Response
Deleting the schedule does not delete the report or any historical runs. To remove report data entirely, contact VInfer support.
End-to-End Example: Weekly QA Performance Report
Here is a complete walkthrough of generating a weekly QA performance report and fetching the result. Step 1 — Generate the report:completed:
qa-team@yourcompany.com. Cancel the schedule at any time with DELETE /reports/rpt_9Yk4nM2sT/schedule.