curl --request GET \
--url https://api.getdialed.ai/v1/data/stores/{store}/precedence \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.getdialed.ai/v1/data/stores/{store}/precedence"
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.getdialed.ai/v1/data/stores/{store}/precedence', 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.getdialed.ai/v1/data/stores/{store}/precedence",
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.getdialed.ai/v1/data/stores/{store}/precedence"
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.getdialed.ai/v1/data/stores/{store}/precedence")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getdialed.ai/v1/data/stores/{store}/precedence")
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{
"config_version": 2,
"default_order": [
"manual",
"csv_file",
"crm",
"five9_report"
],
"field_overrides": {
"owner_team": [
"manual",
"crm"
]
},
"recompute": {
"pending": 4231
},
"store": "company-phone-numbers",
"updated_at": "2026-08-20T12:00:00Z"
}{
"detail": "Authentication required"
}{
"detail": "Admin role required"
}{
"detail": "Store not found"
}{
"detail": "Validation error"
}{
"detail": "Rate limit exceeded"
}Get a store's precedence settings
Returns the precedence deciding this store’s resolved values: the default order every field resolves by, any per-field overrides, the version of these settings, and how many records are still awaiting recompute. An account that has never changed its precedence gets the store’s shipped defaults at version 1. Requires an admin role.
curl --request GET \
--url https://api.getdialed.ai/v1/data/stores/{store}/precedence \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.getdialed.ai/v1/data/stores/{store}/precedence"
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.getdialed.ai/v1/data/stores/{store}/precedence', 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.getdialed.ai/v1/data/stores/{store}/precedence",
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.getdialed.ai/v1/data/stores/{store}/precedence"
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.getdialed.ai/v1/data/stores/{store}/precedence")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getdialed.ai/v1/data/stores/{store}/precedence")
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{
"config_version": 2,
"default_order": [
"manual",
"csv_file",
"crm",
"five9_report"
],
"field_overrides": {
"owner_team": [
"manual",
"crm"
]
},
"recompute": {
"pending": 4231
},
"store": "company-phone-numbers",
"updated_at": "2026-08-20T12:00:00Z"
}{
"detail": "Authentication required"
}{
"detail": "Admin role required"
}{
"detail": "Store not found"
}{
"detail": "Validation error"
}{
"detail": "Rate limit exceeded"
}Authorizations
Path Parameters
Response
Successful Response
One store's precedence settings, with their version and recompute state.
This is the standalone precedence resource. The store detail response carries the same order and overrides as a nested fragment; this one adds the version stamp, when it last moved, and how much of the store is still catching up.
The store these settings belong to, by its URL slug.
The order every field resolves by unless it is overridden.
Version of these settings. It increases on every change, including a change that reverts to the defaults. Every record records the version its resolved view was computed with, which is what makes a view left behind by a precedence change detectable — and what lets a resolved value be explained after the fact.
Whether every record's resolved view reflects the current precedence.
Changing precedence invalidates the resolved views computed under the old
settings, and they are recomputed in the background. While that is running,
bulk queries legitimately mix records resolved under the old precedence with
records resolved under the new one. pending reaching zero is how you know
the window has closed.
Show child attributes
Show child attributes
Per-field orders that depart from the default. A field absent here uses default_order.
Show child attributes
Show child attributes
When these settings last changed. Null means they have never been changed and are the store's shipped defaults.