Get landing page by code (store-scoped, auth)

Overview

Get the landing-page HTML for a campaign landing page, resolved by its unique_code, with the store's placeholders substituted in. Unlike the other links in this folder, this is the authenticated landing-page fetch used by the SPA (store-scoped preview), not a customer-facing link.

Prerequisites

  • A bearer token in the Authorization header.
  • The landingPageUniqueCode of the record you are targeting.
  • Values for the required query parameter store_id — see the table below.

Base URL

EnvironmentURL
Productionhttps://production-api.shoutaboutus.com
Developmenthttps://development-api.shoutaboutus.com

Endpoint

GET /api/v1/campaign/landing-page-by-code/{landingPageUniqueCode}

Authentication

  • Requires a bearer token in the Authorization: Bearer <bearer-token> header.

  • Account — authentication, ACCOUNT-scope group (requires an account bearer token). The store_id query param must sit inside your own account tree (must belong to the caller's company). The endpoint applies the store's placeholders to the HTML.

Rate limit

  • No rate limit.

Path parameters

ParameterTypeRequiredDescription
landingPageUniqueCodestringRequiredIdentifier for the record you are targeting.

Query parameters

FieldTypeRequiredDescription
store_idintegerRequiredMust be an existing location inside your own account tree — must belong to the caller's company.

How it works

  • 200 { status: "success", landing_page_html } (note: HTML sits directly under data, not under a nested data.data).
  • 400 (badRequestResponse) "Landing page not found".
  • 401 when unauthenticated; 422 when store_id is missing/invalid or out of scope.

Response

200 OK · 200

{
  "data": {
    "status": "success",
    "landing_page_html": "<p>Hi Jane, thanks for visiting Downtown Store!</p>"
  }
}

400 Not found · 400

{
  "status": "error",
  "message": "Bad Request",
  "errors": "Landing page not found"
}

422 Store scope · 422

{
  "message": "The store id field is required.",
  "errors": {
    "store_id": [
      "The store id field is required."
    ]
  }
}

Errors

StatusMeaning
400Not found
401Returned when unauthenticated
422Store scope
500Unexpected server error

Example request

curl --request GET \
  --url "https://production-api.shoutaboutus.com/api/v1/campaign/landing-page-by-code/<landingPageUniqueCode>?store_id=123" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?