Get vault holdings
curl --request GET \
--url https://api.collectpure.com/vault/get-holdings/v1 \
--header 'x-api-key: <api-key>'import requests
url = "https://api.collectpure.com/vault/get-holdings/v1"
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://api.collectpure.com/vault/get-holdings/v1', 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.collectpure.com/vault/get-holdings/v1",
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://api.collectpure.com/vault/get-holdings/v1"
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://api.collectpure.com/vault/get-holdings/v1")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.collectpure.com/vault/get-holdings/v1")
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{
"data": {
"holdings": [
{
"productId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"productTitle": "<string>",
"productImage": "<string>",
"productSku": "<string>",
"variantTitle": "<string>",
"totalAccepted": 123,
"fulfilled": 123,
"pending": 123,
"used": 123,
"currentInVault": 123,
"available": 123,
"value": 123,
"filledQuantity": 123
}
],
"summary": {
"totalShipped": 123,
"currentInVault": 123,
"pendingForOrders": 123,
"usedForOrders": 123,
"available": 123,
"totalEstimatedValue": 123,
"totalFillableQuantity": 123
}
}
}Vault API
Get vault holdings
Aggregated vault inventory holdings for the authenticated organization, grouped by product and variant. Quantities mirror the dashboard vault holdings table: total accepted, pending for orders, used for orders, current in vault, and available. Each holding includes estimated sell value from current orderbook bids (same logic as the dashboard Value column).
Requires: vault enabled on the organization.
Rate limit: 120 requests burst, 60 requests/minute sustained.
GET
/
vault
/
get-holdings
/
v1
Get vault holdings
curl --request GET \
--url https://api.collectpure.com/vault/get-holdings/v1 \
--header 'x-api-key: <api-key>'import requests
url = "https://api.collectpure.com/vault/get-holdings/v1"
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://api.collectpure.com/vault/get-holdings/v1', 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.collectpure.com/vault/get-holdings/v1",
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://api.collectpure.com/vault/get-holdings/v1"
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://api.collectpure.com/vault/get-holdings/v1")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.collectpure.com/vault/get-holdings/v1")
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{
"data": {
"holdings": [
{
"productId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"variantId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"productTitle": "<string>",
"productImage": "<string>",
"productSku": "<string>",
"variantTitle": "<string>",
"totalAccepted": 123,
"fulfilled": 123,
"pending": 123,
"used": 123,
"currentInVault": 123,
"available": 123,
"value": 123,
"filledQuantity": 123
}
],
"summary": {
"totalShipped": 123,
"currentInVault": 123,
"pendingForOrders": 123,
"usedForOrders": 123,
"available": 123,
"totalEstimatedValue": 123,
"totalFillableQuantity": 123
}
}
}Was this page helpful?
⌘I