Skip to main content
GET
/
v1
/
store
/
info
Get comprehensive store information
curl --request GET \
  --url https://api.tybritelabs.com/v1/store/info \
  --header 'Authorization: Bearer <token>'
{
  "store": {
    "store_id": "086e8d7f-b84d-41bc-8acd-3f5740ea61dc",
    "name": "Galactic Core Store",
    "default_currency": "EUR",
    "currencies": [
      "EUR",
      "KES",
      "CNY",
      "GBP",
      "USD"
    ],
    "timezone": "Africa/Nairobi",
    "created_at": "2025-12-16T07:20:56.276495+00:00"
  },
  "catalog": {
    "products": {
      "total": 12,
      "has_variants": 3,
      "simple_products": 9,
      "active": 12,
      "inactive": 0,
      "featured": 2,
      "with_images": 12,
      "low_stock": 0
    },
    "collections": {
      "total": 3,
      "names": [
        "Featured",
        "New Arrivals",
        "Christmas Exclusives"
      ]
    },
    "taxonomy": {
      "categories": {
        "total": 12,
        "list": [
          {
            "id": "90ed1bf0-6c3f-4ad8-8b17-bf0b63bd3d45",
            "name": "Laptops",
            "product_count": 4
          }
        ]
      },
      "subcategories": {
        "total": 3,
        "list": [
          {
            "id": "86c9cb06-615c-4ca1-a863-32db101d1f58",
            "name": "Smart Watches",
            "category": "General",
            "product_count": 2
          }
        ]
      }
    },
    "specifications": {
      "total": 1,
      "types": [
        "brand",
        "color",
        "model",
        "product_type",
        "storage_type"
      ]
    },
    "brands": {
      "total": 4,
      "list": [
        "Apple",
        "Samsung",
        "Dell",
        "Sony"
      ]
    }
  },
  "pricing": {
    "has_dynamic_pricing": true,
    "features": {
      "customer_tiers": false,
      "customer_segments": false,
      "volume_discounts": false,
      "location_based": false,
      "time_based": false
    },
    "customer_tiers": [
      "Gold",
      "Silver",
      "Bronze"
    ],
    "pricing_rules": {
      "total": 5,
      "active": 2
    }
  },
  "promotions": {
    "total": 1,
    "active": 1,
    "types": {
      "percentage_discount": 1,
      "fixed_discount": 0,
      "bogo": 0,
      "bundle": 0,
      "free_shipping": 0
    }
  },
  "payments": {
    "providers": [
      "cash",
      "stripe",
      "paystack"
    ],
    "methods": [
      {
        "name": "cash",
        "display_name": "Cash",
        "type": "manual"
      },
      {
        "name": "stripe",
        "display_name": "Card (Stripe)",
        "type": "redirect"
      },
      {
        "name": "paystack",
        "display_name": "Card (Paystack)",
        "type": "popup"
      }
    ]
  },
  "shipping": {
    "zones": {
      "total": 4,
      "list": [
        {
          "name": "USA",
          "delivery_fee": 1500,
          "free_threshold": 100000
        },
        {
          "name": "United Kingdom",
          "delivery_fee": 2500,
          "free_threshold": 100000
        },
        {
          "name": "Kenya",
          "delivery_fee": 250,
          "free_threshold": 10000
        }
      ]
    },
    "has_free_shipping_threshold": true
  },
  "cms": {
    "posts": {
      "total": 2,
      "published": 2,
      "draft": 0
    },
    "lookbooks": {
      "total": 2,
      "published": 2
    }
  },
  "features": {
    "ai_recommendations": false,
    "semantic_search": false,
    "multi_currency": true,
    "dynamic_pricing": true,
    "gift_cards": true,
    "promotions": true,
    "cms": true,
    "messaging": false,
    "specifications": true,
    "collections": true
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.tybritelabs.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API Key Authentication

Use your API key in the Authorization header:

Authorization: Bearer tybrite_sk_live_YOUR_KEY

Key Types:

Secret Keys (Server-Side Only):

  • Format: tybrite_sk_live_* (production) or tybrite_sk_test_* (sandbox)
  • Full read/write access to all endpoints
  • ⚠️ NEVER expose in client-side code or public repositories
  • Required for: write operations, authentication, payment verification, AI recommendations

Publishable Keys (Client-Safe):

  • Format: tybrite_pk_live_* (production) or tybrite_pk_test_* (sandbox)
  • Read-only access (GET requests only, plus POST semantic search)
  • ✅ Safe for client-side JavaScript, mobile apps, and public code
  • Allowed for: browsing products, search, CMS content, pricing queries

Endpoint-Specific Requirements:

  • Authentication endpoints (/v1/auth/*): Secret key required
  • Payment verification (POST /v1/payments/verify): Secret key required
  • AI Recommendations (POST /v1/recommendations): Secret key required
  • Semantic Search (POST /v1/search): Both key types allowed (read-only operation)
  • All write operations: Secret key required
  • All read operations: Both key types allowed

Using a publishable key for restricted operations returns 403 Forbidden.

Query Parameters

sections
string

Comma-separated list of sections to include in the response. Omit to return all sections.

Available Sections:

  • catalog - Products, categories, collections, brands, specifications
  • pricing - Dynamic pricing configuration and rules
  • promotions - Active promotions and types
  • payments - Payment providers and methods
  • shipping - Delivery zones and fees
  • cms - CMS posts and lookbooks
  • features - Feature flags and capabilities

Note: The store section is always included regardless of this parameter.

Examples:

  • sections=catalog,features - Only catalog and features
  • sections=payments,shipping - Only payment and shipping info
  • Omit parameter - All sections included

Payload Size Reduction:

  • Full response: ~15-25KB
  • catalog only: ~8-12KB (50% reduction)
  • features,payments: ~2-3KB (85% reduction)

SDK Usage:

// Get full response object (all sections)
const fullInfo = await client.store.getStoreInfo();
console.log(fullInfo.store.name);
console.log(fullInfo.catalog.products.total);

// Get filtered response (specific sections only)
const catalogInfo = await client.store.getStoreInfo({
sections: ['catalog', 'features']
});

// Destructure to extract specific section directly
// (JavaScript destructuring - extracts 'features' property from response)
const { features } = await client.store.getStoreInfo({
sections: ['features']
});
if (features.multi_currency) {
// Use currency-aware endpoints
}
Example:

"catalog,features"

cache
boolean
default:true

Control cache behavior. Set to false to bypass cache and fetch fresh data.

Default: true (use cache if available)

Cache Duration: 5 minutes (300 seconds)

When to Bypass Cache:

  • After updating store configuration
  • After adding/removing products or categories
  • After changing payment or shipping settings
  • When you need real-time data

Cache Headers:

  • X-Cache: HIT - Response served from cache
  • X-Cache: MISS - Response fetched from database
  • Cache-Control: public, max-age=300 - Browser/CDN caching

SDK Usage:

// Use cache (default)
const cached = await client.store.getStoreInfo();

// Bypass cache for fresh data
const fresh = await client.store.getStoreInfo({ cache: false });

Response

Store information retrieved successfully

store
object
required

Basic store information (always included)

catalog
object

Catalog overview (optional, included when requested)

pricing
object

Pricing configuration (optional, included when requested)

promotions
object

Promotions overview (optional, included when requested)

payments
object

Payment configuration (optional, included when requested)

shipping
object

Shipping configuration (optional, included when requested)

cms
object

CMS content overview (optional, included when requested)

features
object

Feature flags (optional, included when requested)