Cancel a Scraper Studio job
curl --request POST \
--url https://api.brightdata.com/dca/jobs/{job_id}/cancel \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.brightdata.com/dca/jobs/{job_id}/cancel"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.brightdata.com/dca/jobs/{job_id}/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.brightdata.com/dca/jobs/{job_id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.brightdata.com/dca/jobs/{job_id}/cancel"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.brightdata.com/dca/jobs/{job_id}/cancel")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.brightdata.com/dca/jobs/{job_id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body"OK"管理作业
取消 Scraper Studio 作业
使用 POST /dca/jobs//cancel 永久停止 Bright Data Scraper Studio 作业。作业转为 canceled 状态,之后无法恢复。
POST
/
dca
/
jobs
/
{job_id}
/
cancel
Cancel a Scraper Studio job
curl --request POST \
--url https://api.brightdata.com/dca/jobs/{job_id}/cancel \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.brightdata.com/dca/jobs/{job_id}/cancel"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.brightdata.com/dca/jobs/{job_id}/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.brightdata.com/dca/jobs/{job_id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.brightdata.com/dca/jobs/{job_id}/cancel"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.brightdata.com/dca/jobs/{job_id}/cancel")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.brightdata.com/dca/jobs/{job_id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body"OK"永久停止 Bright Data Scraper Studio 作业。作业将转为
已完成的作业无法暂停、恢复或取消。
将返回的
canceled 状态并停止处理其余输入。
该端点不接受请求体,成功时返回纯文本响应体 OK,而非 JSON。请按文本读取响应,不要对其调用 JSON 解析器。
取消操作是永久性的。已取消的作业无法恢复。已采集的数据可能仍然可用,具体取决于运行状态和交付设置。如需临时停止作业,请使用暂停 Scraper Studio 作业。
作业状态行为
| 操作 | 使用场景 | 结果 |
|---|---|---|
| 暂停 | 需要临时停止正在运行的作业 | 作业转为 paused |
| 恢复 | 需要继续已暂停的作业 | 作业恢复为 running |
| 取消 | 需要永久停止作业 | 作业转为 canceled |
如何查找作业 ID
使用作业列表端点查找您要取消的作业 ID:curl "https://api.brightdata.com/dca/collector/jobs?from_date=2026-06-01&to_date=2026-07-13" \
-H "Authorization: Bearer $BRIGHT_DATA_API_TOKEN"
id 值用作 job_id 路径参数。完整参数列表请参见列出 Scraper Studio 作业。
何时使用该端点
- 停止使用错误输入集触发的作业,避免为整次运行付费
- 取消生成的子页面远超预期的失控作业,无需等待出现
too_many_pages错误 - 在重新触发同一爬虫的修正运行之前清除卡住的作业
aborted_page 错误代码。完整目录请参见 Scraper Studio 错误代码。
相关
- 暂停 Scraper Studio 作业:临时停止作业,而非永久停止
- 恢复 Scraper Studio 作业:重新启动已暂停的作业,取消后则无法执行此操作
- IDE 作业数据 API:取消后确认作业状态
- 异步触发爬虫进行批量采集:启动修正后的运行
授权
Use your Bright Data API Key as a Bearer token in the Authorization header.
How to authenticate:
- Obtain your API Key from the Bright Data account settings at https://brightdata.com/cp/setting/users
- Include the API Key in the Authorization header of your requests
- Format:
Authorization: Bearer YOUR_API_KEY
Example:
Authorization: Bearer b5648e1096c6442f60a6c4bbbe73f8d2234d3d8324554bd6a7ec8f3f251f07df
Learn how to get your Bright Data API key: https://docs.brightdata.com/api-reference/authentication
路径参数
ID of the job to cancel
响应
Job canceled successfully
The response is of type string.
此页面对您有帮助吗?