documents.bulk-edit
curl --request POST \
--url https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"changes": {
"merchant": "<string>",
"category": "<string>"
},
"query": "<string>",
"merchant": "<string>",
"category": "<string>",
"dryRun": true
}
'import requests
url = "https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit"
payload = {
"changes": {
"merchant": "<string>",
"category": "<string>"
},
"query": "<string>",
"merchant": "<string>",
"category": "<string>",
"dryRun": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
changes: {merchant: '<string>', category: '<string>'},
query: '<string>',
merchant: '<string>',
category: '<string>',
dryRun: true
})
};
fetch('https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit', 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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit",
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([
'changes' => [
'merchant' => '<string>',
'category' => '<string>'
],
'query' => '<string>',
'merchant' => '<string>',
'category' => '<string>',
'dryRun' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit"
payload := strings.NewReader("{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"code": 200,
"data": {
"result": {}
}
}{
"success": false,
"code": 400,
"error": {
"errorCode": 400,
"errorMessage": "<string>"
}
}{
"success": false,
"code": 401,
"error": {
"errorCode": 401,
"errorMessage": "API key authentication required"
}
}{
"success": false,
"code": 404,
"error": {
"errorCode": 404,
"errorMessage": "<string>"
}
}Capabilities
documents.bulk-edit
Bulk edit documents. Supports dry-run preview (default) and execute modes. Preview returns matching documents with proposed changes and available merchants/categories for context.
POST
/
capabilities
/
documents.bulk-edit
documents.bulk-edit
curl --request POST \
--url https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"changes": {
"merchant": "<string>",
"category": "<string>"
},
"query": "<string>",
"merchant": "<string>",
"category": "<string>",
"dryRun": true
}
'import requests
url = "https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit"
payload = {
"changes": {
"merchant": "<string>",
"category": "<string>"
},
"query": "<string>",
"merchant": "<string>",
"category": "<string>",
"dryRun": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
changes: {merchant: '<string>', category: '<string>'},
query: '<string>',
merchant: '<string>',
category: '<string>',
dryRun: true
})
};
fetch('https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit', 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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit",
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([
'changes' => [
'merchant' => '<string>',
'category' => '<string>'
],
'query' => '<string>',
'merchant' => '<string>',
'category' => '<string>',
'dryRun' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit"
payload := strings.NewReader("{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://developer.api.receiptor.ai/v1/capabilities/documents.bulk-edit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"changes\": {\n \"merchant\": \"<string>\",\n \"category\": \"<string>\"\n },\n \"query\": \"<string>\",\n \"merchant\": \"<string>\",\n \"category\": \"<string>\",\n \"dryRun\": true\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"code": 200,
"data": {
"result": {}
}
}{
"success": false,
"code": 400,
"error": {
"errorCode": 400,
"errorMessage": "<string>"
}
}{
"success": false,
"code": 401,
"error": {
"errorCode": 401,
"errorMessage": "API key authentication required"
}
}{
"success": false,
"code": 404,
"error": {
"errorCode": 404,
"errorMessage": "<string>"
}
}Authorizations
API key prefixed with sk_. Obtain from the Receiptor AI dashboard.
Body
application/json
Changes to apply to matching documents
Show child attributes
Show child attributes
Search query to find documents (optional)
Specific merchant to filter for editing
Specific category to filter for editing
If true, shows preview without making changes. If false, executes the bulk edit.
Was this page helpful?
⌘I