curl --request POST \
--url https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId} \
--header 'Content-Type: application/json' \
--data '{
"data": {}
}'import requests
url = "https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}"
payload = { "data": {} }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({data: {}})
};
fetch('https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}', 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.embedreach.com/api/resources/{schemaDefinitionNameOrId}",
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([
'data' => [
]
]),
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.embedreach.com/api/resources/{schemaDefinitionNameOrId}"
payload := strings.NewReader("{\n \"data\": {}\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}")
.header("Content-Type", "application/json")
.body("{\n \"data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {}\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schema_definition_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schemaDefinitionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platform_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platformId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"business_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"businessId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"resource_external_id": "<string>",
"resourceExternalId": "<string>",
"created_at": "<string>",
"createdAt": "<string>",
"updated_at": "<string>",
"updatedAt": "<string>",
"data": {}
}
}{
"message": "<string>",
"success": false,
"errors": [
"<string>"
]
}{
"success": true,
"message": "<string>",
"data": {
"error": "<string>"
}
}Upload Resource
Uploads data to the partner resource table after validating it against the specified schema definition. When upsert is enabled, new data is merged with existing data (preserving existing fields not included in the request). Null values will explicitly delete the field (required fields cannot be deleted and will return a validation error).
curl --request POST \
--url https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId} \
--header 'Content-Type: application/json' \
--data '{
"data": {}
}'import requests
url = "https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}"
payload = { "data": {} }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({data: {}})
};
fetch('https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}', 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.embedreach.com/api/resources/{schemaDefinitionNameOrId}",
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([
'data' => [
]
]),
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.embedreach.com/api/resources/{schemaDefinitionNameOrId}"
payload := strings.NewReader("{\n \"data\": {}\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}")
.header("Content-Type", "application/json")
.body("{\n \"data\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.embedreach.com/api/resources/{schemaDefinitionNameOrId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {}\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schema_definition_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schemaDefinitionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platform_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platformId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"business_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"businessId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"resource_external_id": "<string>",
"resourceExternalId": "<string>",
"created_at": "<string>",
"createdAt": "<string>",
"updated_at": "<string>",
"updatedAt": "<string>",
"data": {}
}
}{
"message": "<string>",
"success": false,
"errors": [
"<string>"
]
}{
"success": true,
"message": "<string>",
"data": {
"error": "<string>"
}
}Headers
If using a platform scoped JWT, you can pass in a header to impersonate a specific tenant to impersonate the request as.
Path Parameters
The name or id of the schema definition to upload the resource to
Query Parameters
What to do if the resource already exists. upsert will merge new data with existing data (PATCH-like behavior), preserving existing fields not included in the request. Null values will delete fields. reject will throw an error if the resource already exists
upsert, reject Whether to allow extra fields that are not defined in the schema. If true, extra fields will be accepted but not saved. If false, requests with extra fields will be rejected.
true, false Body
Show child attributes
Show child attributes