List datasets
curl --request GET \
--url https://rest-api.captide.co/api/v2/datasets \
--header 'X-API-Key: <api-key>'import requests
url = "https://rest-api.captide.co/api/v2/datasets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://rest-api.captide.co/api/v2/datasets', 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://rest-api.captide.co/api/v2/datasets",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://rest-api.captide.co/api/v2/datasets"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://rest-api.captide.co/api/v2/datasets")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest-api.captide.co/api/v2/datasets")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"key": "ownership",
"title": "US institutional holdings (SEC Form 13F)",
"description": "Quarter-end holdings that institutional investment managers report on Form 13F: shares, principal amounts and options in US-listed 13(f) securities, their market value and voting authority, per manager, security and filing, from filings dated 2020 onward. …",
"endpoints": [
"GET /api/v2/datasets/ownership/holdings"
],
"completeFrom": "2020-01-01T05:00:00Z",
"freshness": "New 13F filings are extracted every 15 minutes once ingested from EDGAR and appear within 15 minutes of extraction; history comes from the SEC's quarterly Form 13F data sets.",
"license": "Form 13F filings are US government records in the public domain. Cite the filing.",
"docsUrl": "https://docs.captide.ai/datasets/ownership"
}
]List Datasets
The datasets Captide builds from the documents it collects, such as institutional holdings from Form 13F filings: what each covers, how fresh it is, its licence, and the endpoints that serve it.
Every data point in a dataset links to the document it was read from (sources[].documentId), so you can fetch it with GET /api/v2/documents/{id} and show the exact page.
GET
/
api
/
v2
/
datasets
List datasets
curl --request GET \
--url https://rest-api.captide.co/api/v2/datasets \
--header 'X-API-Key: <api-key>'import requests
url = "https://rest-api.captide.co/api/v2/datasets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://rest-api.captide.co/api/v2/datasets', 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://rest-api.captide.co/api/v2/datasets",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://rest-api.captide.co/api/v2/datasets"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://rest-api.captide.co/api/v2/datasets")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest-api.captide.co/api/v2/datasets")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"key": "ownership",
"title": "US institutional holdings (SEC Form 13F)",
"description": "Quarter-end holdings that institutional investment managers report on Form 13F: shares, principal amounts and options in US-listed 13(f) securities, their market value and voting authority, per manager, security and filing, from filings dated 2020 onward. …",
"endpoints": [
"GET /api/v2/datasets/ownership/holdings"
],
"completeFrom": "2020-01-01T05:00:00Z",
"freshness": "New 13F filings are extracted every 15 minutes once ingested from EDGAR and appear within 15 minutes of extraction; history comes from the SEC's quarterly Form 13F data sets.",
"license": "Form 13F filings are US government records in the public domain. Cite the filing.",
"docsUrl": "https://docs.captide.ai/datasets/ownership"
}
]Authorizations
Response
The datasets
Dataset key, as used in its endpoints' paths (ownership)
Dataset name
What the dataset covers
The endpoints that serve the dataset
The dataset's guide on docs.captide.ai
Point-in-time reads (asOf) are complete from this time; earlier history was loaded in bulk
How soon new data appears
Licence and attribution terms
Was this page helpful?