Replace the rules a connection's accounts are matched by, in order.
curl --request PUT \
--url https://{workspace}.klef.ai/api/connections/{id}/match-rules \
--header 'Content-Type: application/json' \
--header 'If-Match: <if-match>' \
--cookie klef.session= \
--data '
{
"rules": [
{
"targetField": "<string>",
"workerField": "<string>"
}
]
}
'import requests
url = "https://{workspace}.klef.ai/api/connections/{id}/match-rules"
payload = { "rules": [
{
"targetField": "<string>",
"workerField": "<string>"
}
] }
headers = {
"cookie": "klef.session=",
"If-Match": "<if-match>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
cookie: 'klef.session=',
'If-Match': '<if-match>',
'Content-Type': 'application/json'
},
body: JSON.stringify({rules: [{targetField: '<string>', workerField: '<string>'}]})
};
fetch('https://{workspace}.klef.ai/api/connections/{id}/match-rules', 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://{workspace}.klef.ai/api/connections/{id}/match-rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'rules' => [
[
'targetField' => '<string>',
'workerField' => '<string>'
]
]
]),
CURLOPT_COOKIE => "klef.session=",
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"If-Match: <if-match>"
],
]);
$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://{workspace}.klef.ai/api/connections/{id}/match-rules"
payload := strings.NewReader("{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("cookie", "klef.session=")
req.Header.Add("If-Match", "<if-match>")
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.put("https://{workspace}.klef.ai/api/connections/{id}/match-rules")
.header("cookie", "klef.session=")
.header("If-Match", "<if-match>")
.header("Content-Type", "application/json")
.body("{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{workspace}.klef.ai/api/connections/{id}/match-rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["cookie"] = 'klef.session='
request["If-Match"] = '<if-match>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}Connection accounts
Replace the rules a connection's accounts are matched by, in order.
PUT
/
connections
/
{id}
/
match-rules
Replace the rules a connection's accounts are matched by, in order.
curl --request PUT \
--url https://{workspace}.klef.ai/api/connections/{id}/match-rules \
--header 'Content-Type: application/json' \
--header 'If-Match: <if-match>' \
--cookie klef.session= \
--data '
{
"rules": [
{
"targetField": "<string>",
"workerField": "<string>"
}
]
}
'import requests
url = "https://{workspace}.klef.ai/api/connections/{id}/match-rules"
payload = { "rules": [
{
"targetField": "<string>",
"workerField": "<string>"
}
] }
headers = {
"cookie": "klef.session=",
"If-Match": "<if-match>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
cookie: 'klef.session=',
'If-Match': '<if-match>',
'Content-Type': 'application/json'
},
body: JSON.stringify({rules: [{targetField: '<string>', workerField: '<string>'}]})
};
fetch('https://{workspace}.klef.ai/api/connections/{id}/match-rules', 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://{workspace}.klef.ai/api/connections/{id}/match-rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'rules' => [
[
'targetField' => '<string>',
'workerField' => '<string>'
]
]
]),
CURLOPT_COOKIE => "klef.session=",
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"If-Match: <if-match>"
],
]);
$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://{workspace}.klef.ai/api/connections/{id}/match-rules"
payload := strings.NewReader("{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("cookie", "klef.session=")
req.Header.Add("If-Match", "<if-match>")
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.put("https://{workspace}.klef.ai/api/connections/{id}/match-rules")
.header("cookie", "klef.session=")
.header("If-Match", "<if-match>")
.header("Content-Type", "application/json")
.body("{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{workspace}.klef.ai/api/connections/{id}/match-rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["cookie"] = 'klef.session='
request["If-Match"] = '<if-match>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"rules\": [\n {\n \"targetField\": \"<string>\",\n \"workerField\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}{
"result": "<unknown>",
"errors": [
{
"errorCode": "validation_error",
"errorMessage": "<string>",
"target": "<string>"
}
]
}Authorizations
cookieAuthapiKeyAuth
Cookie-based session. Obtain by completing the /auth/login/{provider} OAuth flow; the /auth/callback response sets the klef.session cookie that subsequent requests send automatically.
Headers
Strong ETag (e.g. "3") of the resource's current version, from the most recent GET or write. Required for the write to proceed; a missing header returns 428, a malformed value returns 400.
Path Parameters
Body
application/json
Maximum array length:
10Show child attributes
Show child attributes
Response
No Content
Was this page helpful?