Documentation Index
Fetch the complete documentation index at: https://docs.spurtest.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Connecting Spur to your CI/CD pipeline adds an automated quality gate right before deployment. When a pull request is opened or code is pushed, Spur triggers your test plans and reports results directly in your repository. Failing tests block a merge before anything reaches production.GitHub
Set up GitHub Actions to run test plans on every pull request.
GitLab
Set up GitLab CI/CD to run test plans on every merge request.
Override URLs
Redirect tests to deploy previews or feature branch URLs at runtime.
Triggering via webhook
As an alternative to the GitHub Actions or GitLab pipeline files, you can trigger Spur test plans directly using a curl request to the Spur webhook. This is useful if you use a CI/CD provider other than GitHub or GitLab, or if you want more control over when tests are triggered. Send a POST request to the Spur webhook endpoint with your API key (found on the GitHub Integration Settings page in Spur):override_urls body is optional — include it to redirect tests to a different URL (such as a deploy preview) without changing your environment settings. See Override URLs for the full configuration options.
Launching a specific test plan
If you need to trigger a single test plan by ID — for example, to run a specific regression suite as part of a deployment pipeline — use therun_test_plan endpoint instead of the general webhook.
Send a POST request to https://app.spurtest.com/api/run_test_plan with your authorization token and a JSON body specifying which test plan to run.
Request fields
| Field | Type | Required | Notes |
|---|---|---|---|
test_plan_id | integer | Yes | Must be a JSON number, not a string. |
request_id | string | Yes | Non-empty string used as the workflow or run request ID. |
override_urls | object | No | If present, must be a JSON object. Any other type (such as a string or array) is rejected. See Override URLs for configuration details. |
Example request
The
test_plan_id must be a number in the JSON body. Passing it as a string (e.g. "789") will fail validation.