Skip to main content
POST
/
checklist
/
royaltyproducts
/
import
Import Missing Products from Royalty Data
curl --request POST \
  --url https://api.royalti.io/checklist/royaltyproducts/import \
  --header 'Authorization: Bearer <token>'
import requests

url = "https://api.royalti.io/checklist/royaltyproducts/import"

headers = {"Authorization": "Bearer <token>"}

response = requests.post(url, headers=headers)

print(response.text)
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};

fetch('https://api.royalti.io/checklist/royaltyproducts/import', 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.royalti.io/checklist/royaltyproducts/import",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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.royalti.io/checklist/royaltyproducts/import"

req, _ := http.NewRequest("POST", 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.post("https://api.royalti.io/checklist/royaltyproducts/import")
.header("Authorization", "Bearer <token>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.royalti.io/checklist/royaltyproducts/import")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
{
  "status": "success",
  "message": "Product import job queued",
  "data": {
    "jobId": "<string>",
    "batchId": "<string>"
  }
}
{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": [
"<string>"
]
}
}
{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": [
"<string>"
]
}
}
This endpoint requires authentication. Include your Bearer token in the Authorization header.

Description

/checklist/royaltyproducts/import Scans BigQuery royalty data for UPCs that don’t exist in the catalog and stages them in the CatalogImportItem table for admin review. Products use BigQuery metadata only (no Spotify enrichment in v1). Authorization:
  • Required role: admin or higher
Method: POST

Code Examples

const response = await fetch('https://api.royalti.io/checklist/royaltyproducts/import', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${token}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({})
});

const data = await response.json();
console.log(data);
import requests

response = requests.post(
  'https://api.royalti.io/checklist/royaltyproducts/import',
  headers={
    'Authorization': f'Bearer {token}'
  },
  json={}
)

data = response.json()
print(data)
curl -X POST https://api.royalti.io/checklist/royaltyproducts/import \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Response

Import job queued successfully

status
string
Example:

"success"

message
string
Example:

"Product import job queued"

data
object