{
  "name": "WEMS Marketing External API",
  "version": "v1",
  "publicBaseUrl": "https://marketing.sun-bd.com/api/public/v1",
  "authentication": {
    "type": "api_key",
    "header": "X-Api-Key",
    "notes": [
      "API keys are issued by the WEMS Marketing administrator.",
      "Do not place API keys in browser JavaScript, public HTML, source control, or screenshots."
    ]
  },
  "documentation": {
    "featureOverview": "https://marketing.sun-bd.com/features.html",
    "featureOverviewZhCn": "https://marketing.sun-bd.com/features-zh-cn.html",
    "featureOverviewEn": "https://marketing.sun-bd.com/features-en.html",
    "apiTutorial": "https://marketing.sun-bd.com/docs/api.html",
    "apiTutorialZhCn": "https://marketing.sun-bd.com/docs/api-zh-cn.html",
    "apiTutorialEn": "https://marketing.sun-bd.com/docs/api-en.html",
    "webSystem": "https://www.sun-bd.com/login.html?project=wems-marketing&returnUrl=https%3A%2F%2Fmarketing.sun-bd.com%2Fauth%2Fcallback"
  },
  "endpoints": [
    {
      "method": "GET",
      "path": "/status",
      "requiresApiKey": false,
      "description": "Returns service status and documentation links."
    },
    {
      "method": "GET",
      "path": "/catalog",
      "requiresApiKey": false,
      "description": "Returns available public API resources."
    },
    {
      "method": "GET",
      "path": "/summary",
      "requiresApiKey": true,
      "description": "Returns tenant-level counts for SEO, social, and ads data."
    },
    {
      "method": "GET",
      "path": "/seo/audits",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged recent SEO audit records."
    },
    {
      "method": "GET",
      "path": "/seo/keywords",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged tracked keyword records."
    },
    {
      "method": "GET",
      "path": "/seo/serp-rankings",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged SERP ranking records."
    },
    {
      "method": "GET",
      "path": "/social/posts",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged social post records."
    },
    {
      "method": "GET",
      "path": "/social/engagements",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged social engagement records."
    },
    {
      "method": "GET",
      "path": "/ads/campaigns",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged ad campaign records."
    },
    {
      "method": "GET",
      "path": "/ads/performance",
      "requiresApiKey": true,
      "query": ["page", "page_size"],
      "description": "Paged ad performance metric records."
    }
  ],
  "responseEnvelope": {
    "success": true,
    "data": {},
    "error": null,
    "traceId": "string"
  }
}
