curl --request POST \
--url https://api.example.com/v0/operations/{operation_id}/pause \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"idempotency_key": "<string>"
}
'import requests
url = "https://api.example.com/v0/operations/{operation_id}/pause"
payload = { "idempotency_key": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({idempotency_key: '<string>'})
};
fetch('https://api.example.com/v0/operations/{operation_id}/pause', 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.example.com/v0/operations/{operation_id}/pause",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'idempotency_key' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v0/operations/{operation_id}/pause"
payload := strings.NewReader("{\n \"idempotency_key\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.example.com/v0/operations/{operation_id}/pause")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"idempotency_key\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v0/operations/{operation_id}/pause")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"idempotency_key\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"operation_id": "<string>",
"kind": "<string>",
"state": "queued",
"counters": {},
"errors": [
{
"code": "<string>",
"message": "<string>",
"retryable": true,
"field": "<string>",
"resync_url": "<string>"
}
],
"progress": 0.5,
"previous_operation_id": "<string>",
"corpus_id": "<string>",
"result": {
"projection_generation_id": "<string>"
},
"backfill": {
"registration_id": "<string>",
"spaces": [
"<string>"
],
"estimate": {
"registration_id": "<string>",
"spaces": [
"<string>"
],
"versions": 1,
"segments": 1,
"input_tokens": 1,
"estimated_seconds": 1,
"duration_basis": "rate",
"confirmation_required": true,
"estimated_cost_usd": 1
},
"accepted_after": "2023-11-07T05:31:56Z",
"accepted_before": "2023-11-07T05:31:56Z",
"plan_id": "<string>",
"checkpoint": "<string>"
}
}{
"code": "<string>",
"message": "<string>",
"retryable": true,
"field": "<string>",
"resync_url": "<string>"
}Pause operation
Holds a backfill until it is resumed. A queued or running backfill becomes paused and makes no progress, keeping its checkpoint and the Pipeline Plan it is pinned to. Nothing committed is undone. Any other state is returned unchanged, so repeating the request is safe. Only backfills pause.
curl --request POST \
--url https://api.example.com/v0/operations/{operation_id}/pause \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"idempotency_key": "<string>"
}
'import requests
url = "https://api.example.com/v0/operations/{operation_id}/pause"
payload = { "idempotency_key": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({idempotency_key: '<string>'})
};
fetch('https://api.example.com/v0/operations/{operation_id}/pause', 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.example.com/v0/operations/{operation_id}/pause",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'idempotency_key' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v0/operations/{operation_id}/pause"
payload := strings.NewReader("{\n \"idempotency_key\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.example.com/v0/operations/{operation_id}/pause")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"idempotency_key\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v0/operations/{operation_id}/pause")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"idempotency_key\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"operation_id": "<string>",
"kind": "<string>",
"state": "queued",
"counters": {},
"errors": [
{
"code": "<string>",
"message": "<string>",
"retryable": true,
"field": "<string>",
"resync_url": "<string>"
}
],
"progress": 0.5,
"previous_operation_id": "<string>",
"corpus_id": "<string>",
"result": {
"projection_generation_id": "<string>"
},
"backfill": {
"registration_id": "<string>",
"spaces": [
"<string>"
],
"estimate": {
"registration_id": "<string>",
"spaces": [
"<string>"
],
"versions": 1,
"segments": 1,
"input_tokens": 1,
"estimated_seconds": 1,
"duration_basis": "rate",
"confirmation_required": true,
"estimated_cost_usd": 1
},
"accepted_after": "2023-11-07T05:31:56Z",
"accepted_before": "2023-11-07T05:31:56Z",
"plan_id": "<string>",
"checkpoint": "<string>"
}
}{
"code": "<string>",
"message": "<string>",
"retryable": true,
"field": "<string>",
"resync_url": "<string>"
}Authorizations
API key, not necessarily a JWT. Server derives Organization, permitted actions and Corpus scope; every resource access is authorized.
Path Parameters
1Body
1Response
Successful response
Administrative execution only. Retries keep identity. Intentional terminal rerun has a new ID and previous_operation_id. Cancellation does not promise universal rollback; already-terminal state and racing completion may win. projection_rebuild, retrieval_configuration and backfill Operations require corpus_id; when succeeded they require result naming the activated logical generation, or for a backfill the generation it filled. A backfill also carries backfill, and its counters versions_in_scope, versions_done, versions_skipped (with skipped_) and segments. Only a backfill can be paused.
11queued, running, paused, succeeded, failed, cancel_requested, canceled Show child attributes
Show child attributes
20Show child attributes
Show child attributes
Approximate fraction, omitted when unknown.
0 <= x <= 111Logical generation activated for the requested Corpus. Opaque ID, never a physical search collection name.
Show child attributes
Show child attributes
What a backfill fills and how far it got.
Show child attributes
Show child attributes