Attach Dataset Group External ID
curl --request POST \
--url https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"source": "<string>",
"external_id": "<string>"
}
'import requests
url = "https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids"
payload = {
"source": "<string>",
"external_id": "<string>"
}
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({source: '<string>', external_id: '<string>'})
};
fetch('https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids', 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.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids",
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([
'source' => '<string>',
'external_id' => '<string>'
]),
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://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids"
payload := strings.NewReader("{\n \"source\": \"<string>\",\n \"external_id\": \"<string>\"\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://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"source\": \"<string>\",\n \"external_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids")
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 \"source\": \"<string>\",\n \"external_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"external_id": {
"source": "<string>",
"external_id": "<string>"
}
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Datasets API
Attach Dataset Group External ID
POST
/
api
/
public
/
v2
/
dataset-groups
/
{dataset_group_id}
/
external-ids
Attach Dataset Group External ID
curl --request POST \
--url https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"source": "<string>",
"external_id": "<string>"
}
'import requests
url = "https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids"
payload = {
"source": "<string>",
"external_id": "<string>"
}
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({source: '<string>', external_id: '<string>'})
};
fetch('https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids', 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.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids",
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([
'source' => '<string>',
'external_id' => '<string>'
]),
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://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids"
payload := strings.NewReader("{\n \"source\": \"<string>\",\n \"external_id\": \"<string>\"\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://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"source\": \"<string>\",\n \"external_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/api/public/v2/dataset-groups/{dataset_group_id}/external-ids")
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 \"source\": \"<string>\",\n \"external_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"external_id": {
"source": "<string>",
"external_id": "<string>"
}
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"message": "<string>",
"success": false
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Legacy Dataset, Evaluation, and Report endpoints are deprecated for new workflows. Use the Tables API for new dataset import, evaluation, scoring, recalculation, and reporting workflows.
{source, external_id} mapping to an existing dataset group.
Attaching the same mapping to the same dataset group is idempotent. Reusing the mapping on another entity returns 409 Conflict. See External IDs.Authorizations
Path Parameters
Body
application/json
Was this page helpful?
⌘I

