{
  "generatedAt": "2026-09-20T14:53:33.069Z",
  "title": "Share a Wish Public API",
  "version": "1.1.0",
  "oneLiner": "Wishlist, save-widget, hosted lists, creator shops and discovery endpoints of Share a Wish.",
  "baseUrl": "https://nqwfhjycwrtukfszuofi.supabase.co/functions/v1/public-api",
  "specUrl": "https://shareawish.shop/openapi/shareawish-public-api.yaml",
  "docsUrl": "https://shareawish.shop/developers/",
  "referenceUrl": "https://shareawish.shop/developers/reference.html",
  "changelogUrl": "https://shareawish.shop/developers/changelog.html",
  "sdk": {
    "canonicalWidgetUrl": "https://shareawish.shop/sdk/v1/widget.js",
    "canonicalBasketUrl": "https://shareawish.shop/sdk/v1/basket-integration.js",
    "legacyUrls": [
      "https://shareawish.shop/sdk/save-sdk.js",
      "https://shareawish.shop/sdk/basket-integration.js",
      "https://cdn.shareawish.shop/sdk/v1/save-sdk.js",
      "https://cdn.shareawish.shop/sdk/v1/basket-integration.js",
      "https://cdn.shareawish.shop/widget.js",
      "https://cdn.shareawish.com/widget.js"
    ],
    "hostedSaveUrl": "https://shareawish.shop/save",
    "hostedBasketUrl": "https://shareawish.shop/basket"
  },
  "rateLimitHeaders": [
    {
      "name": "X-RateLimit-Limit",
      "description": "Requests per minute allowed for the plan."
    },
    {
      "name": "X-RateLimit-Remaining",
      "description": "Remaining requests in the current minute (never below 0; informational)."
    },
    {
      "name": "X-RateLimit-Reset",
      "description": "ISO timestamp when the minute window resets."
    },
    {
      "name": "X-Usage-Month",
      "description": "Requests counted this calendar month."
    },
    {
      "name": "X-Usage-Limit",
      "description": "Included monthly requests of the plan."
    },
    {
      "name": "X-Usage-Overage",
      "description": "Overage amount accrued this month (currency units)."
    }
  ],
  "ratePlans": [
    {
      "plan": "Free / trial",
      "key": "trial",
      "monthlyCalls": 1000,
      "perMinute": 10,
      "overagePer1k": 0.05,
      "productionKeys": false,
      "webhooks": false,
      "note": "Default for partners without an API subscription (partner.plan = free)."
    },
    {
      "plan": "Creator (Pro / Business / Enterprise shop plan, no API add-on)",
      "key": "creator",
      "monthlyCalls": 0,
      "perMinute": 5,
      "overagePer1k": 0.1,
      "productionKeys": true,
      "webhooks": false,
      "note": "Creator plans include no API calls; every call is overage unless an API plan is added."
    },
    {
      "plan": "Premium Creator",
      "key": "premium-creator",
      "monthlyCalls": 25000,
      "perMinute": 50,
      "overagePer1k": 0.01,
      "productionKeys": true,
      "webhooks": false,
      "note": "Stackable with an API plan (calls are added on top)."
    },
    {
      "plan": "Starter API",
      "key": "starter-api",
      "monthlyCalls": 50000,
      "perMinute": 100,
      "overagePer1k": 0.01,
      "productionKeys": true,
      "webhooks": false
    },
    {
      "plan": "Pro API",
      "key": "pro-api",
      "monthlyCalls": 500000,
      "perMinute": 1000,
      "overagePer1k": 0.008,
      "productionKeys": true,
      "webhooks": true
    },
    {
      "plan": "Business API",
      "key": "business-api",
      "monthlyCalls": 2000000,
      "perMinute": 3000,
      "overagePer1k": 0.005,
      "productionKeys": true,
      "webhooks": true
    },
    {
      "plan": "Enterprise API",
      "key": "enterprise-api",
      "monthlyCalls": 10000000,
      "perMinute": 5000,
      "overagePer1k": 0.003,
      "productionKeys": true,
      "webhooks": true
    }
  ],
  "rateLimitedPrefixes": [
    "/widget",
    "/shops",
    "/baskets",
    "/hosted",
    "/products"
  ],
  "counts": {
    "documented": 74,
    "inCode": 148,
    "undocumented": 9,
    "documentedAll": 139
  },
  "undocumented": [],
  "tagDescriptions": {
    "Infrastructure": "Health and usage endpoints defined in index.ts.",
    "Widget": "Save Widget flow for partner shops (routes/widget.ts). Origin-bound widget token.",
    "Hosted": "Hosted wishlist pages and the consumer app's list CRUD (routes/hosted.ts).",
    "Shops": "Public creator storefront data (routes/shops.ts).",
    "Discover": "Cross-shop discovery, search, trending, seasonal (routes/discover.ts).",
    "Stores": "Retailer catalogue and affiliate URL generation (routes/stores.ts).",
    "Baskets": "Basket widget configuration and events (routes/baskets.ts).",
    "Analytics": "Usage analytics for the Partner Portal (routes/analytics.ts). Internal origins only.",
    "Me": "Consumer account, friends, notifications (routes/me.ts).",
    "Amazon": "Amazon wishlist import/sync (routes/amazon.ts).",
    "Partners": "Partner bootstrap and external storefront listing (routes/partners.ts).",
    "Roles": "Role summary for the current user (routes/roles.ts).",
    "Images": "Image proxy (routes/images.ts).",
    "OG": "Open Graph previews for shared lists (routes/og.ts).",
    "Sitemap": "Dynamic sitemaps (routes/sitemap.ts).",
    "Blog": "Blog content API (routes/blog.ts).",
    "Feedback": "In-app feedback and feature requests (routes/feedback.ts).",
    "Scraper": "Product scraping utilities (routes/scraper_route.ts).",
    "Media": "Creator product videos — public playback (routes/media.ts) and partner management (routes/me-media.ts).",
    "Usage": "Wishlist-action usage of the current billing period for the portal (routes/usage.ts)."
  },
  "tags": {
    "Infrastructure": [
      {
        "method": "GET",
        "path": "/",
        "summary": "Service status",
        "operationId": "getRoot",
        "tag": "Infrastructure",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/infrastructure/GET/"
      },
      {
        "method": "GET",
        "path": "/health",
        "summary": "Health check",
        "operationId": "getHealth",
        "tag": "Infrastructure",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": 9,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/infrastructure/GET/health"
      },
      {
        "method": "GET",
        "path": "/api-usage/{apiKeyId}",
        "summary": "Usage and plan limits for an API key",
        "operationId": "getApiUsage",
        "tag": "Infrastructure",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "publicKey"
        ],
        "priority": 5,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/infrastructure/GET/api-usage/{apiKeyId}"
      }
    ],
    "Widget": [
      {
        "method": "POST",
        "path": "/widget/init",
        "summary": "Mint a widget token for the current origin",
        "operationId": "widgetInit",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "publicKey"
        ],
        "priority": 1,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/init"
      },
      {
        "method": "POST",
        "path": "/widget/prefetch",
        "summary": "Canonicalise a product URL and fetch OG metadata",
        "operationId": "widgetPrefetch",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/prefetch"
      },
      {
        "method": "POST",
        "path": "/widget/lists",
        "summary": "Wishlists of the signed-in user (list picker)",
        "operationId": "widgetLists",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "userToken"
        ],
        "priority": 4,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/lists"
      },
      {
        "method": "GET",
        "path": "/widget/saved-products",
        "summary": "Saved products of the user for this partner (GET)",
        "operationId": "widgetSavedProductsGet",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "userToken"
        ],
        "priority": 3,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/GET/widget/saved-products"
      },
      {
        "method": "POST",
        "path": "/widget/saved-products",
        "summary": "Saved products of the user for this partner (POST)",
        "operationId": "widgetSavedProductsPost",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/saved-products"
      },
      {
        "method": "DELETE",
        "path": "/widget/saved-products/{itemId}",
        "summary": "Remove a saved product (only items saved from this domain)",
        "operationId": "widgetDeleteSavedProduct",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/DELETE/widget/saved-products/{itemId}"
      },
      {
        "method": "POST",
        "path": "/widget/save",
        "summary": "Save a product to a wishlist",
        "operationId": "widgetSave",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "userToken"
        ],
        "priority": 2,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/save"
      },
      {
        "method": "POST",
        "path": "/widget/oauth-state",
        "summary": "OAuth bridge: create a one-time state",
        "operationId": "widgetOauthState",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "publicKey"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/oauth-state"
      },
      {
        "method": "POST",
        "path": "/widget/oauth-complete",
        "summary": "OAuth bridge: store session tokens for a state",
        "operationId": "widgetOauthComplete",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/oauth-complete"
      },
      {
        "method": "POST",
        "path": "/widget/oauth-poll",
        "summary": "OAuth bridge: poll for the session (one-time read, bound to the creating key)",
        "operationId": "widgetOauthPoll",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken",
          "publicKey"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/oauth-poll"
      },
      {
        "method": "POST",
        "path": "/widget/session-store",
        "summary": "Persist a user session for the widget session id",
        "operationId": "widgetSessionStore",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/session-store"
      },
      {
        "method": "POST",
        "path": "/widget/session-restore",
        "summary": "Restore (and refresh) a stored user session",
        "operationId": "widgetSessionRestore",
        "tag": "Widget",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "widgetToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/session-restore"
      }
    ],
    "Hosted": [
      {
        "method": "POST",
        "path": "/hosted/lists",
        "summary": "Wishlists owned by or shared with the user",
        "operationId": "hostedLists",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": 6,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/lists"
      },
      {
        "method": "POST",
        "path": "/hosted/saved-products",
        "summary": "All saved products of the user (no domain filter)",
        "operationId": "hostedSavedProducts",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/saved-products"
      },
      {
        "method": "POST",
        "path": "/hosted/save",
        "summary": "Save a product from a hosted page or the app",
        "operationId": "hostedSave",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": 7,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/save"
      },
      {
        "method": "POST",
        "path": "/hosted/scrape-preview",
        "summary": "Scrape product metadata for a URL without saving",
        "operationId": "hostedScrapePreview",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/scrape-preview"
      },
      {
        "method": "POST",
        "path": "/hosted/me/init",
        "summary": "Ensure the app user row exists; return default wishlist",
        "operationId": "hostedMeInit",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/me/init"
      },
      {
        "method": "POST",
        "path": "/hosted/me/lists",
        "summary": "Create a wishlist",
        "operationId": "hostedCreateList",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/me/lists"
      },
      {
        "method": "GET",
        "path": "/hosted/occasions",
        "summary": "Available occasions with localized titles",
        "operationId": "hostedOccasions",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/occasions"
      },
      {
        "method": "GET",
        "path": "/hosted/lists/{token}",
        "summary": "Wishlist metadata by share token (owner or editor)",
        "operationId": "hostedGetList",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": 8,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/lists/{token}"
      },
      {
        "method": "PUT",
        "path": "/hosted/lists/{token}",
        "summary": "Update list metadata",
        "operationId": "hostedUpdateList",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/PUT/hosted/lists/{token}"
      },
      {
        "method": "DELETE",
        "path": "/hosted/lists/{token}",
        "summary": "Delete a list and its items (owner only)",
        "operationId": "hostedDeleteList",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/DELETE/hosted/lists/{token}"
      },
      {
        "method": "GET",
        "path": "/hosted/lists/{token}/items",
        "summary": "Items of a wishlist (owner or editor)",
        "operationId": "hostedListItems",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": 8,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/lists/{token}/items"
      },
      {
        "method": "PUT",
        "path": "/hosted/lists/{token}/items/{itemId}",
        "summary": "Update an item (overrides and purchased flag)",
        "operationId": "hostedUpdateItem",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/PUT/hosted/lists/{token}/items/{itemId}"
      },
      {
        "method": "DELETE",
        "path": "/hosted/lists/{token}/items/{itemId}",
        "summary": "Remove an item (and garbage-collect manual products)",
        "operationId": "hostedDeleteItem",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/DELETE/hosted/lists/{token}/items/{itemId}"
      },
      {
        "method": "PUT",
        "path": "/hosted/lists/{token}/items/{itemId}/purchased",
        "summary": "Toggle the purchased flag",
        "operationId": "hostedSetPurchased",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/PUT/hosted/lists/{token}/items/{itemId}/purchased"
      },
      {
        "method": "GET",
        "path": "/hosted/public/lists/{token}",
        "summary": "Public wishlist metadata (share page)",
        "operationId": "hostedPublicList",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/public/lists/{token}"
      },
      {
        "method": "GET",
        "path": "/hosted/public/lists/{token}/items",
        "summary": "Items of a public wishlist",
        "operationId": "hostedPublicListItems",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/public/lists/{token}/items"
      },
      {
        "method": "PUT",
        "path": "/hosted/public/lists/{token}/items/{itemId}/purchased",
        "summary": "Mark an item of a public list as purchased (no auth)",
        "operationId": "hostedPublicSetPurchased",
        "tag": "Hosted",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/PUT/hosted/public/lists/{token}/items/{itemId}/purchased"
      }
    ],
    "Shops": [
      {
        "method": "GET",
        "path": "/shops/{handle}",
        "summary": "Public shop overview",
        "operationId": "shopGet",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": 10,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}"
      },
      {
        "method": "GET",
        "path": "/shops/by-domain/{domain}",
        "summary": "Resolve a shop by custom domain",
        "operationId": "shopByDomain",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/by-domain/{domain}"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/lists",
        "summary": "Curated lists of a shop",
        "operationId": "shopLists",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/lists"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/categories",
        "summary": "Categories of a shop with product counts",
        "operationId": "shopCategories",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/categories"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/products",
        "summary": "Products of a shop (optionally by category)",
        "operationId": "shopProducts",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/products"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/search",
        "summary": "Search products and lists inside a shop",
        "operationId": "shopSearch",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/search"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/lists/{slug}/products",
        "summary": "Products of a curated list",
        "operationId": "shopListProducts",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/lists/{slug}/products"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/featured-lists",
        "summary": "Featured lists of a shop",
        "operationId": "shopFeaturedLists",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/featured-lists"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/trending",
        "summary": "Trending products of a shop",
        "operationId": "shopTrending",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/trending"
      },
      {
        "method": "GET",
        "path": "/shops/{handle}/analytics/followers",
        "summary": "Follower time series of a public shop",
        "operationId": "shopFollowerSeries",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/{handle}/analytics/followers"
      },
      {
        "method": "GET",
        "path": "/shops/@me/analytics/followers",
        "summary": "Follower time series across the caller's shops",
        "operationId": "myShopsFollowerSeries",
        "tag": "Shops",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/shops/GET/shops/@me/analytics/followers"
      }
    ],
    "Discover": [
      {
        "method": "GET",
        "path": "/discover/trending",
        "summary": "Platform-wide trending products",
        "operationId": "discoverTrending",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/trending"
      },
      {
        "method": "GET",
        "path": "/discover/search",
        "summary": "Unified search (lists or products)",
        "operationId": "discoverSearch",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/search"
      },
      {
        "method": "GET",
        "path": "/discover/shops",
        "summary": "Search partner shops",
        "operationId": "discoverShops",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/shops"
      },
      {
        "method": "GET",
        "path": "/discover/partners",
        "summary": "Public creator shops",
        "operationId": "discoverPartners",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/partners"
      },
      {
        "method": "GET",
        "path": "/discover/curated-lists",
        "summary": "Featured lists across public shops",
        "operationId": "discoverCuratedLists",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/curated-lists"
      },
      {
        "method": "GET",
        "path": "/discover/products/{productId}",
        "summary": "Product detail",
        "operationId": "discoverProduct",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/products/{productId}"
      },
      {
        "method": "GET",
        "path": "/discover/products/{productId}/price-history",
        "summary": "Price history (scraper + offer prices, one point per day)",
        "operationId": "discoverPriceHistory",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/products/{productId}/price-history"
      },
      {
        "method": "GET",
        "path": "/discover/seasonal",
        "summary": "Seasonal products",
        "operationId": "discoverSeasonal",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/seasonal"
      },
      {
        "method": "GET",
        "path": "/discover/occasions",
        "summary": "Products for an occasion",
        "operationId": "discoverOccasions",
        "tag": "Discover",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/discover/GET/discover/occasions"
      }
    ],
    "Stores": [
      {
        "method": "GET",
        "path": "/stores",
        "summary": "Retailers available in the in-app browser",
        "operationId": "storesList",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/GET/stores"
      },
      {
        "method": "GET",
        "path": "/stores/categories",
        "summary": "Store categories with counts",
        "operationId": "storesCategories",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/GET/stores/categories"
      },
      {
        "method": "GET",
        "path": "/stores/by-category",
        "summary": "Stores grouped by category",
        "operationId": "storesByCategory",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/GET/stores/by-category"
      },
      {
        "method": "POST",
        "path": "/stores/affiliate-info",
        "summary": "Affiliate program information for a URL",
        "operationId": "storesAffiliateInfo",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/POST/stores/affiliate-info"
      },
      {
        "method": "POST",
        "path": "/stores/generate-affiliate-url",
        "summary": "Generate an affiliate URL for a store link",
        "operationId": "storesGenerateAffiliateUrl",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/POST/stores/generate-affiliate-url"
      },
      {
        "method": "GET",
        "path": "/stores/{slug}",
        "summary": "Store detail",
        "operationId": "storesGet",
        "tag": "Stores",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/stores/GET/stores/{slug}"
      }
    ],
    "Baskets": [
      {
        "method": "GET",
        "path": "/baskets/{id}",
        "summary": "Basket widget configuration by public id",
        "operationId": "basketGet",
        "tag": "Baskets",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/baskets/GET/baskets/{id}"
      },
      {
        "method": "POST",
        "path": "/baskets/{id}/event",
        "summary": "Track a basket open/checkout event",
        "operationId": "basketEvent",
        "tag": "Baskets",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "publicKey",
          "widgetToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/baskets/POST/baskets/{id}/event"
      }
    ],
    "Partners": [
      {
        "method": "GET",
        "path": "/partners/storefront/me",
        "summary": "My external storefront listing",
        "operationId": "partnersStorefrontGet",
        "tag": "Partners",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/partners/GET/partners/storefront/me"
      },
      {
        "method": "PUT",
        "path": "/partners/storefront/me",
        "summary": "Create or update my external storefront listing",
        "operationId": "partnersStorefrontPut",
        "tag": "Partners",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/partners/PUT/partners/storefront/me"
      },
      {
        "method": "GET",
        "path": "/partners/storefronts",
        "summary": "Public listing of external partner storefronts",
        "operationId": "partnersStorefronts",
        "tag": "Partners",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/partners/GET/partners/storefronts"
      }
    ],
    "Images": [
      {
        "method": "GET",
        "path": "/images/proxy",
        "summary": "Image proxy / resizer for allow-listed hosts",
        "operationId": "imagesProxy",
        "tag": "Images",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/images/GET/images/proxy"
      }
    ],
    "OG": [
      {
        "method": "GET",
        "path": "/og/list/{token}",
        "summary": "HTML link preview for a shared list (bots)",
        "operationId": "ogList",
        "tag": "OG",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/og/GET/og/list/{token}"
      },
      {
        "method": "GET",
        "path": "/og/image/{file}",
        "summary": "1200×630 Open Graph JPEG for a list (`<token>.jpg`)",
        "operationId": "ogImage",
        "tag": "OG",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/og/GET/og/image/{file}"
      }
    ],
    "Blog": [
      {
        "method": "GET",
        "path": "/blog",
        "summary": "Published blog posts",
        "operationId": "blogList",
        "tag": "Blog",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/blog/GET/blog"
      },
      {
        "method": "GET",
        "path": "/blog/{slug}",
        "summary": "Full blog article with sections and translations",
        "operationId": "blogGet",
        "tag": "Blog",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/blog/GET/blog/{slug}"
      }
    ],
    "Media": [
      {
        "method": "GET",
        "path": "/products/{id}/media",
        "summary": "Ready creator videos for a product",
        "operationId": "productMedia",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": true,
        "deprecated": false,
        "auth": [
          "none"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/GET/products/{id}/media"
      },
      {
        "method": "GET",
        "path": "/me/media",
        "summary": "My product videos (with plan limit info)",
        "operationId": "myMediaList",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/GET/me/media"
      },
      {
        "method": "POST",
        "path": "/me/media",
        "summary": "Register an uploaded video (status ready)",
        "operationId": "myMediaCreate",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/POST/me/media"
      },
      {
        "method": "POST",
        "path": "/me/media/upload-url",
        "summary": "Signed upload URLs for a video (and poster)",
        "operationId": "myMediaUploadUrl",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/POST/me/media/upload-url"
      },
      {
        "method": "PATCH",
        "path": "/me/media/{id}",
        "summary": "Update title, caption, language, position or status of a video",
        "operationId": "myMediaUpdate",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/PATCH/me/media/{id}"
      },
      {
        "method": "DELETE",
        "path": "/me/media/{id}",
        "summary": "Delete a video and its storage objects",
        "operationId": "myMediaDelete",
        "tag": "Media",
        "audience": "partner",
        "rateLimited": false,
        "deprecated": false,
        "auth": [
          "userToken"
        ],
        "priority": null,
        "anchor": "https://shareawish.shop/developers/reference.html#tag/media/DELETE/me/media/{id}"
      }
    ]
  },
  "top": [
    {
      "method": "POST",
      "path": "/widget/init",
      "summary": "Mint a widget token for the current origin",
      "operationId": "widgetInit",
      "tag": "Widget",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "publicKey"
      ],
      "priority": 1,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/init"
    },
    {
      "method": "POST",
      "path": "/widget/save",
      "summary": "Save a product to a wishlist",
      "operationId": "widgetSave",
      "tag": "Widget",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "widgetToken",
        "userToken"
      ],
      "priority": 2,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/save"
    },
    {
      "method": "GET",
      "path": "/widget/saved-products",
      "summary": "Saved products of the user for this partner (GET)",
      "operationId": "widgetSavedProductsGet",
      "tag": "Widget",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "widgetToken",
        "userToken"
      ],
      "priority": 3,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/GET/widget/saved-products"
    },
    {
      "method": "POST",
      "path": "/widget/lists",
      "summary": "Wishlists of the signed-in user (list picker)",
      "operationId": "widgetLists",
      "tag": "Widget",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "widgetToken",
        "userToken"
      ],
      "priority": 4,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/widget/POST/widget/lists"
    },
    {
      "method": "GET",
      "path": "/api-usage/{apiKeyId}",
      "summary": "Usage and plan limits for an API key",
      "operationId": "getApiUsage",
      "tag": "Infrastructure",
      "audience": "partner",
      "rateLimited": false,
      "deprecated": false,
      "auth": [
        "publicKey"
      ],
      "priority": 5,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/infrastructure/GET/api-usage/{apiKeyId}"
    },
    {
      "method": "POST",
      "path": "/hosted/lists",
      "summary": "Wishlists owned by or shared with the user",
      "operationId": "hostedLists",
      "tag": "Hosted",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "userToken"
      ],
      "priority": 6,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/lists"
    },
    {
      "method": "POST",
      "path": "/hosted/save",
      "summary": "Save a product from a hosted page or the app",
      "operationId": "hostedSave",
      "tag": "Hosted",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "userToken"
      ],
      "priority": 7,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/POST/hosted/save"
    },
    {
      "method": "GET",
      "path": "/hosted/lists/{token}",
      "summary": "Wishlist metadata by share token (owner or editor)",
      "operationId": "hostedGetList",
      "tag": "Hosted",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "userToken"
      ],
      "priority": 8,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/lists/{token}"
    },
    {
      "method": "GET",
      "path": "/hosted/lists/{token}/items",
      "summary": "Items of a wishlist (owner or editor)",
      "operationId": "hostedListItems",
      "tag": "Hosted",
      "audience": "partner",
      "rateLimited": true,
      "deprecated": false,
      "auth": [
        "userToken"
      ],
      "priority": 8,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/hosted/GET/hosted/lists/{token}/items"
    },
    {
      "method": "GET",
      "path": "/health",
      "summary": "Health check",
      "operationId": "getHealth",
      "tag": "Infrastructure",
      "audience": "partner",
      "rateLimited": false,
      "deprecated": false,
      "auth": [
        "none"
      ],
      "priority": 9,
      "anchor": "https://shareawish.shop/developers/reference.html#tag/infrastructure/GET/health"
    }
  ]
}
