Allomancy

Store and loyalty

Read store details and the store's loyalty tiers.

These two read-only endpoints return the store's own details and its loyalty tiers. Both use the store:read scope, so a key with store:read reaches both. Field shapes are on the Object reference page.

Get store details

GET /v1/store

Returns the store the key belongs to. Scope: store:read.

curl --fail-with-body https://integrations.allomancy.net/v1/store \
  -H "X-API-Key: allo_live_8Kd2...zQ.Hk9...4w"
import requests

response = requests.get(
    "https://integrations.allomancy.net/v1/store",
    headers={"X-API-Key": "allo_live_8Kd2...zQ.Hk9...4w"},
)
print(response.json())
const response = await fetch("https://integrations.allomancy.net/v1/store", {
  headers: { "X-API-Key": "allo_live_8Kd2...zQ.Hk9...4w" },
});
console.log(await response.json());
<?php
$ch = curl_init("https://integrations.allomancy.net/v1/store");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: allo_live_8Kd2...zQ.Hk9...4w"]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
{
  "id": "6f9c1b2e-4a7d-4e91-9c3a-2b8d5e0f1a23",
  "name": "Aether & Ash",
  "logo": "0d4f8a11-9b2c-4e6d-8f1a-3c7b5d9e2f04",
  "blogListed": true,
  "applicationOpen": false,
  "bonus": { "baseBonus": 0, "groupBonus": 5 },
  "locationSlUrl": "http://maps.secondlife.com/secondlife/Aether/128/64/22",
  "ownerUuid": "a1b2c3d4-e5f6-4789-9abc-def012345678",
  "ownerUsername": "aether.ash"
}

The response is a StoreResponse. The locationSlUrl is a Second Life map URL for the store, or an empty string when no location is set. Status: 200, or 404 if the store cannot be found.

Get loyalty tiers

GET /v1/loyalty/tiers

Returns the store's loyalty tiers. Scope: store:read.

Unlike the list endpoints elsewhere in the API, this one returns a bare JSON array of LoyaltyTierResponse objects. It is not cursor-paginated and not wrapped in the data and pagination envelope. A store with no tiers returns an empty array.

curl --fail-with-body https://integrations.allomancy.net/v1/loyalty/tiers \
  -H "X-API-Key: allo_live_8Kd2...zQ.Hk9...4w"
import requests

response = requests.get(
    "https://integrations.allomancy.net/v1/loyalty/tiers",
    headers={"X-API-Key": "allo_live_8Kd2...zQ.Hk9...4w"},
)
print(response.json())
const response = await fetch(
  "https://integrations.allomancy.net/v1/loyalty/tiers",
  {
    headers: { "X-API-Key": "allo_live_8Kd2...zQ.Hk9...4w" },
  },
);
console.log(await response.json());
<?php
$ch = curl_init("https://integrations.allomancy.net/v1/loyalty/tiers");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: allo_live_8Kd2...zQ.Hk9...4w"]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
[
  { "spendingThreshold": 1000, "discountPercentage": 5, "isGroupOnly": false, "isLastYearOnly": false },
  { "spendingThreshold": 5000, "discountPercentage": 10, "isGroupOnly": false, "isLastYearOnly": true }
]

Status: always 200.

On this page