Introduction
This document describes the API (V3) for the Snap Send Solve integration service, which allows responsible organisations to retrieve and update incident reports.
The full specifications and details of all current APIs can be found on SwaggerHub at SnapSendSolve Integration v2.
Overview
Snap Send Solve is a powerful platform that enables users to report issues such as potholes, graffiti and damaged infrastructure directly to local authorities and service providers. With the added benefit of API integration, Snap Send Solve can seamlessly connect with your organisation’s case management system, streamlining the reporting process and ensuring that issues are addressed promptly and efficiently.
Authentication
Snap Send Solve integration APIs use API key authentication to authorise requests. Follow the steps below to authenticate your API requests:
Obtaining API Credentials
To access the APIs, you need an API key and an authorityId . These credentials can be obtained by logging in to the Snap Send Solve portal as an admin user and clicking on the Authority menu on the left-hand side.
Using the API Key
The API key must be included in the HTTP request header for all API calls. Add the API key to the Authorization header as shown below: Authorization: <your-api-key>
List of APIs
Snap Send Solve provides various API endpoints for managing incident reports.
Overview of API Endpoints
Get a List of Reports
Endpoint:
/v3/reportsMethod: GET
Description: Retrieves a list of incident reports for a specific authority. The only mandatory parameter is the
authorityId.
Get Report Details
Endpoint:
/v3/reports/{reportId}Method: GET
Description: Fetches detailed information for a single report by its ID.
Update a Report
Endpoint:
/v3/reports/{reportId}Method: POST
Description: Updates the status, stage, or other details of a specific report.
Get Incident Types
Endpoint:
/v3/incidentTypesMethod: GET
Description: Returns a list of all active incident types available for reporting.
Get Triage Authorities
Endpoint:
/v3/reports/{reportId}/triage/authoritiesMethod: GET
Description: Lists authorities available for triaging a report.
Triage a Report
Endpoint:
/v3/reports/{reportId}/triageMethod: POST
Description: Triages a report to another authority
What's new in V3
Enhanced Report Status Filtering
Multiple Status Support
The V3 API now supports filtering by multiple report statuses simultaneously:
// V2 API - Single status only - returns all Open reports
GET /v2/reports?status=Open
// V3 API - Multiple statuses supported - returns all Open and all Viewed // reports
GET /v3/reports?status=Open&status=Viewed
StatusForSnapper Parameter
A new filtering parameter statusForSnapper has been introduced to filter reports based on Snapper-specific status values:
Supported Values:
Solved,Unsolved,Cancelled,Closed,NudgedCan be used alone or in combination with regular status filtering
Supports both single and multiple values
// Filter by Snapper status
GET /v3/reports?statusForSnapper=Solved
// Combine regular status and Snapper status
GET /v3/reports?status=Open&statusForSnapper=Unsolved
ExcludeStatusForSnapper Parameter
A new exclusion filtering parameter excludeStatusForSnapper has been introduced to exclude reports with specific Snapper status values:
Supported Values:
Solved,Unsolved,Cancelled,Closed,NudgedCan be used alone or in combination with regular status filtering
Supports both single and multiple values
IMPORTANT: Should NOT be used together with
statusForSnapperparameter. Use one or the other, not both simultaneously
// Exclude specific Snapper statuses
GET /v3/reports?excludeStatusForSnapper=Solved&excludeStatusForSnapper=Cancelled
// Get all Open reports except those marked as Solved by Snapper
GET /v3/reports?status=Open&excludeStatusForSnapper=Solved
// Get reports excluding multiple Snapper statuses
GET /v3/reports?excludeStatusForSnapper=Solved&excludeStatusForSnapper=Cancelled&excludeStatusForSnapper=Closed
Usage Note: The excludeStatusForSnapper parameter is mutually exclusive with statusForSnapper. Using both parameters in the same request may lead to unexpected results or empty response sets. Choose either inclusion filtering (statusForSnapper) or exclusion filtering (excludeStatusForSnapper) based on your use case.
Improved Status Handling in V3
The report status now reflects whether a report is in the Viewed status. Previous (V2) behaviour would show all New and Viewed reports as having the Open status. Now Open reports are specifially New reports that have not been viewed.
Important Information
Detailed Specifications: SwaggerHub documentation for each API endpoint includes information on required and optional parameters, request and response schema, and example requests and responses.
Authentication: Ensure that all API requests include the appropriate Authorization header with the API key.
Error Handling: APIs return standard HTTP status codes to indicate success or failure, along with detailed error messages when applicable.
Need more help? Get support from our team by emailing us at contact@snapsendsolve.com or sending us a message.

