Workflow credentials
Patch Credential Value
Add, overwrite or remove individual keys of a static credential’s value.
The whole-value PUT cannot express this: the value is one encrypted blob the client is never allowed to read, so replacing it wholesale would silently drop every key the caller did not happen to retype. The merge belongs on the server, which is the only side that can decrypt.
PATCH
/
workflow
/
credentials
/
{credential_id}
/
value
Patch Credential Value
curl --request PATCH \
--url https://api.anyreach.ai/workflow/credentials/{credential_id}/value \
--header 'Content-Type: application/json' \
--data '
{
"set": {},
"delete": [],
"expires_at": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.anyreach.ai/workflow/credentials/{credential_id}/value"
payload = {
"set": {},
"delete": [],
"expires_at": "2023-11-07T05:31:56Z"
}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({set: {}, delete: [], expires_at: '2023-11-07T05:31:56Z'})
};
fetch('https://api.anyreach.ai/workflow/credentials/{credential_id}/value', 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.anyreach.ai/workflow/credentials/{credential_id}/value",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'set' => [
],
'delete' => [
],
'expires_at' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"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.anyreach.ai/workflow/credentials/{credential_id}/value"
payload := strings.NewReader("{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
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.patch("https://api.anyreach.ai/workflow/credentials/{credential_id}/value")
.header("Content-Type", "application/json")
.body("{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anyreach.ai/workflow/credentials/{credential_id}/value")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Headers
Organization ID for user PATs (pat_ prefix tokens)
Path Parameters
Body
application/json
A partial edit of a static credential's value.
Per-key rather than whole-value because the value is a single encrypted blob the client cannot read: to overwrite one key without wiping the rest, the merge has to happen on the server, which is the only side that can decrypt.
Response
Successful Response
⌘I
Patch Credential Value
curl --request PATCH \
--url https://api.anyreach.ai/workflow/credentials/{credential_id}/value \
--header 'Content-Type: application/json' \
--data '
{
"set": {},
"delete": [],
"expires_at": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.anyreach.ai/workflow/credentials/{credential_id}/value"
payload = {
"set": {},
"delete": [],
"expires_at": "2023-11-07T05:31:56Z"
}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({set: {}, delete: [], expires_at: '2023-11-07T05:31:56Z'})
};
fetch('https://api.anyreach.ai/workflow/credentials/{credential_id}/value', 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.anyreach.ai/workflow/credentials/{credential_id}/value",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'set' => [
],
'delete' => [
],
'expires_at' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"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.anyreach.ai/workflow/credentials/{credential_id}/value"
payload := strings.NewReader("{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
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.patch("https://api.anyreach.ai/workflow/credentials/{credential_id}/value")
.header("Content-Type", "application/json")
.body("{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anyreach.ai/workflow/credentials/{credential_id}/value")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"set\": {},\n \"delete\": [],\n \"expires_at\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}
