curl -X POST "https://nunu.ai/api/v1/project/your-project-id/runs/stop" \
-H "X-Api-Key: YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}'
const response = await fetch("https://nunu.ai/api/v1/project/your-project-id/runs/stop", {
method: "POST",
headers: {
"X-Api-Key": process.env.NUNU_API_TOKEN,
"Content-Type": "application/json",
},
body: JSON.stringify({
job_ids: ["f80f6230-3a4f-431a-9d55-d11b867fed4e"],
}),
});
const data = await response.json();
import requests
import os
response = requests.post(
"https://nunu.ai/api/v1/project/your-project-id/runs/stop",
headers={
"X-Api-Key": os.environ["NUNU_API_TOKEN"],
"Content-Type": "application/json"
},
json={
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}
)
data = response.json()
{
"ok": true,
"message": "Successfully stopped 2 job(s)",
"received_count": 2,
"stopped_count": 2,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": true,
"status": 200,
"message": "Job stopped"
}
]
}
{
"ok": false,
"message": "Stopped 1/2 job(s)",
"received_count": 2,
"stopped_count": 1,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": false,
"status": 500,
"error": "Job already completed"
}
]
}
{
"error": "no jobs found in your project matching the provided IDs"
}
Runs
Stop Runs
Stop one or more running tests. Only jobs belonging to your project will be stopped.
POST
/
project
/
{projectId}
/
runs
/
stop
curl -X POST "https://nunu.ai/api/v1/project/your-project-id/runs/stop" \
-H "X-Api-Key: YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}'
const response = await fetch("https://nunu.ai/api/v1/project/your-project-id/runs/stop", {
method: "POST",
headers: {
"X-Api-Key": process.env.NUNU_API_TOKEN,
"Content-Type": "application/json",
},
body: JSON.stringify({
job_ids: ["f80f6230-3a4f-431a-9d55-d11b867fed4e"],
}),
});
const data = await response.json();
import requests
import os
response = requests.post(
"https://nunu.ai/api/v1/project/your-project-id/runs/stop",
headers={
"X-Api-Key": os.environ["NUNU_API_TOKEN"],
"Content-Type": "application/json"
},
json={
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}
)
data = response.json()
{
"ok": true,
"message": "Successfully stopped 2 job(s)",
"received_count": 2,
"stopped_count": 2,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": true,
"status": 200,
"message": "Job stopped"
}
]
}
{
"ok": false,
"message": "Stopped 1/2 job(s)",
"received_count": 2,
"stopped_count": 1,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": false,
"status": 500,
"error": "Job already completed"
}
]
}
{
"error": "no jobs found in your project matching the provided IDs"
}
Permission Required:
project:operate-runsRequest Body
string[]
required
Array of job IDs to stop (minimum 1). Job IDs are returned when you start a run.
Response
boolean
required
true if all jobs stopped successfullystring
required
Human-readable summary (e.g., “Successfully stopped 2 job(s)”)
integer
required
Number of job IDs provided in the request
integer
required
Number of jobs actually stopped
Result[]
required
Stopping a run will terminate it immediately. Any in-progress test steps will be marked as incomplete.
curl -X POST "https://nunu.ai/api/v1/project/your-project-id/runs/stop" \
-H "X-Api-Key: YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}'
const response = await fetch("https://nunu.ai/api/v1/project/your-project-id/runs/stop", {
method: "POST",
headers: {
"X-Api-Key": process.env.NUNU_API_TOKEN,
"Content-Type": "application/json",
},
body: JSON.stringify({
job_ids: ["f80f6230-3a4f-431a-9d55-d11b867fed4e"],
}),
});
const data = await response.json();
import requests
import os
response = requests.post(
"https://nunu.ai/api/v1/project/your-project-id/runs/stop",
headers={
"X-Api-Key": os.environ["NUNU_API_TOKEN"],
"Content-Type": "application/json"
},
json={
"job_ids": ["f80f6230-3a4f-431a-9d55-d11b867fed4e"]
}
)
data = response.json()
{
"ok": true,
"message": "Successfully stopped 2 job(s)",
"received_count": 2,
"stopped_count": 2,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": true,
"status": 200,
"message": "Job stopped"
}
]
}
{
"ok": false,
"message": "Stopped 1/2 job(s)",
"received_count": 2,
"stopped_count": 1,
"results": [
{
"job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
"ok": true,
"status": 200,
"message": "Job stopped"
},
{
"job_id": "0a9f9c52-8917-4f47-bb72-b0093c200bed",
"ok": false,
"status": 500,
"error": "Job already completed"
}
]
}
{
"error": "no jobs found in your project matching the provided IDs"
}
Authorizations
API key for authentication
Path Parameters
The project ID. You can copy it from the project settings page or the project URL in the dashboard.
Body
application/json
Array of job IDs to stop
Minimum array length:
1