cURL
curl --request POST \
--url https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota \
--header 'Content-Type: text/plain' \
--header 'Oauth-Token: <api-key>' \
--data '<JSON example>'import requests
url = "https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota"
payload = "<JSON example>"
headers = {
"Oauth-Token": "<api-key>",
"Content-Type": "text/plain"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Oauth-Token': '<api-key>', 'Content-Type': 'text/plain'},
body: '<JSON example>'
};
fetch('https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota', 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://marketplace-as-a-service.herokuapp.com/index.php/api/dakota",
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 example>",
CURLOPT_HTTPHEADER => [
"Content-Type: text/plain",
"Oauth-Token: <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://marketplace-as-a-service.herokuapp.com/index.php/api/dakota"
payload := strings.NewReader("<JSON example>")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Oauth-Token", "<api-key>")
req.Header.Add("Content-Type", "text/plain")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota")
.header("Oauth-Token", "<api-key>")
.header("Content-Type", "text/plain")
.body("<JSON example>")
.asString();require 'uri'
require 'net/http'
url = URI("https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Oauth-Token"] = '<api-key>'
request["Content-Type"] = 'text/plain'
request.body = "<JSON example>"
response = http.request(request)
puts response.read_body13F Holdings API
13F Holdings API
This endpoint requires an Oauth-Token obtained from /oauth2
POST
/
index.php
/
api
/
dakota
cURL
curl --request POST \
--url https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota \
--header 'Content-Type: text/plain' \
--header 'Oauth-Token: <api-key>' \
--data '<JSON example>'import requests
url = "https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota"
payload = "<JSON example>"
headers = {
"Oauth-Token": "<api-key>",
"Content-Type": "text/plain"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Oauth-Token': '<api-key>', 'Content-Type': 'text/plain'},
body: '<JSON example>'
};
fetch('https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota', 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://marketplace-as-a-service.herokuapp.com/index.php/api/dakota",
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 example>",
CURLOPT_HTTPHEADER => [
"Content-Type: text/plain",
"Oauth-Token: <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://marketplace-as-a-service.herokuapp.com/index.php/api/dakota"
payload := strings.NewReader("<JSON example>")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Oauth-Token", "<api-key>")
req.Header.Add("Content-Type", "text/plain")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota")
.header("Oauth-Token", "<api-key>")
.header("Content-Type", "text/plain")
.body("<JSON example>")
.asString();require 'uri'
require 'net/http'
url = URI("https://marketplace-as-a-service.herokuapp.com/index.php/api/dakota")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Oauth-Token"] = '<api-key>'
request["Content-Type"] = 'text/plain'
request.body = "<JSON example>"
response = http.request(request)
puts response.read_bodyHow to Use
- Copy any of the JSON examples below.
- Go to the API playground by clicking on the โTry itโ button.
- Paste the JSON into the request body field.
- Click โSendโ button to execute the request.
Examples
Count 13F Holdings Records
{
"module": "13f_holdings",
"count_only": true
}
List All 13F Holdings
{
"module": "13f_holdings"
}
List 13F Holdings with Specific Fields
{
"module": "13f_holdings",
"filters": {
"fields": [
"name",
"nameofissuer",
"ticker",
"cusip",
"value",
"filedat",
"periodofreport",
"dakota_account_id",
"dakota_investment_strategy_id",
"status"
],
"order_by": "filedat:DESC",
"max_num": "20"
}
}
Filter by Filed At
{
"module": "13f_holdings",
"filters": {
"filter": [
{
"filedat": {
"$between": ["2026-09-01 00:00:00", "2026-09-30 23:59:59"]
}
}
],
"fields": [
"name",
"nameofissuer",
"ticker",
"value",
"filedat",
"periodofreport",
"companyname"
],
"order_by": "filedat:DESC"
}
}
Filter by Ticker
{
"module": "13f_holdings",
"filters": {
"filter": [
{
"ticker": {
"$equals": "IJH"
}
}
],
"fields": [
"name",
"nameofissuer",
"ticker",
"cusip",
"value",
"shrsorprnamt",
"filedat",
"companyname"
]
}
}
Matched 13F Data
Use this filter to return only holdings that have been matched to a Dakota Account and Investment Strategy (dakota_account_id and dakota_investment_strategy_id are not null).
{
"module": "13f_holdings",
"filters": {
"filter": [
{
"$and": [
{
"dakota_account_id": {
"$not_null": ""
}
},
{
"dakota_investment_strategy_id": {
"$not_null": ""
}
}
]
}
],
"fields": [
"name",
"nameofissuer",
"ticker",
"value",
"filedat",
"dakota_account_id",
"dakota_account_name",
"dakota_investment_strategy_id",
"dakota_investment_strategy_name",
"status",
"pct_change_qoq",
"portfolio_pct_weight"
],
"order_by": "filedat:DESC",
"max_num": "20"
}
}
Authorizations
Get the OAuth token by calling the /oauth2 authentication API. Use the access_token from the response to authorize your API requests.
Body
text/plain
Copy any of the JSON examples and paste it into the request body field.

