curl --request GET \
--url https://api-dev.narrative.io/datasets/{dataset_id}/interfaces \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/interfaces"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/interfaces', 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-dev.narrative.io/datasets/{dataset_id}/interfaces",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-dev.narrative.io/datasets/{dataset_id}/interfaces"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-dev.narrative.io/datasets/{dataset_id}/interfaces")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/interfaces")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"dataset_id": 18923,
"accepted": [
{
"app_id": 42,
"interface_id": "audience_export"
}
],
"errors": [
{
"app_id": 99,
"interface_id": "people_match",
"details": {
"valid": false,
"errors": [
{
"instanceLocation": "$.properties",
"error": "required property 'email' missing"
}
]
}
}
]
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}List connector interfaces compatible with a dataset
Evaluates the dataset’s schema against every connector interface exposed by apps installed for the caller’s company, and reports which interfaces accept the schema and which reject it.
Each installed app may expose one or more interfaces, each with its own JSON-Schema-based policy. An interface with no policy accepts any dataset schema.
The optional tags query parameter restricts evaluation to interfaces whose metadata tags
intersect the supplied set (case-insensitive, OR semantics). When omitted, every interface is
evaluated.
curl --request GET \
--url https://api-dev.narrative.io/datasets/{dataset_id}/interfaces \
--header 'Authorization: Bearer <token>'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/interfaces"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/interfaces', 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-dev.narrative.io/datasets/{dataset_id}/interfaces",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-dev.narrative.io/datasets/{dataset_id}/interfaces"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-dev.narrative.io/datasets/{dataset_id}/interfaces")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/interfaces")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"dataset_id": 18923,
"accepted": [
{
"app_id": 42,
"interface_id": "audience_export"
}
],
"errors": [
{
"app_id": 99,
"interface_id": "people_match",
"details": {
"valid": false,
"errors": [
{
"instanceLocation": "$.properties",
"error": "required property 'email' missing"
}
]
}
}
]
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier for a dataset.
Query Parameters
Restrict evaluation to interfaces whose metadata tags include at least one of the supplied
values. Repeat the parameter to pass multiple tags (e.g. ?tags=audience_delivery).
Matching is case-insensitive.
Response
OK
The dataset whose schema was evaluated against installed connector interfaces.
Connector interfaces whose policy is satisfied by the dataset's schema.
Show child attributes
Show child attributes
Connector interfaces whose policy was not satisfied by the dataset's schema, along with per-interface details describing which constraints failed.
Show child attributes
Show child attributes
Was this page helpful?

