Placewise API
Get startedExplore
Get startedExplore
Performance Cloud 🗗
Placewise 🗗
ExplorePublic APIManagement API
Users APIOperations APIMessaging APIReporting APIML APIData API
ExplorePublic APIManagement API
Users APIOperations APIMessaging APIReporting APIML APIData API
  1. Components
  • Introduction
  • Core
    • Privacy Policy
      • Introduction
      • Show Privacy Policy
      • Update Privacy Policy
    • Community
      • Community Model
      • Show Community
      • Update Community
    • Loyalty Clubs
      • Show Loyalty Club
      • Update Loyalty Club
    • Applications
      • Application model
      • List applications
      • Create application
      • Update application
      • Show application
      • Destroy application
    • Branding
      • Show loyalty club branding
      • Show application branding
      • Update application branding
      • Duplicate application branding
      • Destroy application branding
    • Cookie Policy
      • Show Cookie Policy
      • Update Cookie Policy
    • Terms
      • Introduction
      • Show Terms
      • Update Terms
    • Domains
      • Introduction
      • List Domains
      • Show Domain
      • Create Domain
      • Destroy Domain
    • Domain Email Configs
      • Introduction
      • Show Domain Email Config
      • Create Domain Email Config
      • Destroy Domain Email Config
    • Domain Web Configs
      • Introduction
      • Show Domain Web Config
      • Create Domain Web Config
      • Destroy Domain Web Config
    • TLS Certificates
      • Introduction
      • List TLS Certificates
      • Show TLS Certificate
      • Create TLS Certificate
      • Update TLS Certificate
      • Destroy TLS Certificate
    • Links
      • Introduction
      • List Links
      • Show Link
      • Enable Link
      • Disable Link
      • Create Link
      • Delete Link
      • Generate Link
    • Fonts
      • Introduction
      • List Fonts
      • Show Font
      • Create Font
      • Enable Font
      • Disable Font
      • Update Font
      • Destroy Font
    • Subunits
      • Introduction
      • List Subunits
      • Show Subunit By External ID
      • Show Subunit
      • Create Subunit
      • Update Subunit
      • Destroy Subunit
    • Subunits Scopes
      • Introduction
      • List Subunits Scopes
      • Show Subunits Scope
      • Create Subunits Scope
      • Update Subunits Scope
      • Destroy Subunits Scope
    • Contacts
      • Introduction
      • List Customer Contacts
      • Show Customer Contact
      • Create Customer Contact
      • Update Customer Contact
      • Destroy Customer Contact
      • List Organization Contacts
      • Show Organization Contact
      • Create Organization Contact
      • Update Organization Contact
      • Destroy Organization Contact
    • Translations
      • [DRAFT] Show Loyalty Club Translations
    • Promotions Policy
      • Introduction
      • Show Promotions Policy
      • Update Promotions Policy
    • Tracker
      • Show Loyalty Club Configuration
      • Update Loyalty Club Configuration
      • List tracked links
      • Show tracked link
    • Social Logins
      • List configurations
      • Show configuration
      • Create configuration
      • Update configuration
      • Destroy configuration
    • Billing
      • Service Quotas
        • ServiceQuotasConfig Model
        • List Service quotas configs
        • Create Service quotas config
        • Show Service quotas config
        • Update Service quotas config
        • Delete Service quotas config
      • Recurring Charges
        • RecurringCharge Model
        • Archieve Recurring charge
        • Restore Recurring charge
        • List Recurring charges
        • Create Recurring charge
        • Show Recurring charge
        • Update Recurring charge
        • Delete Recurring charge
      • Service Usages
        • History
          • Show Service Usage History
        • List Service Usages
      • Customer Accoutning Configurations
        • Show customer accoutning configuration
        • Update customer accoutning configuration
      • Show billing summary
      • Show billing breakdown
      • Show billing balance
      • Show billing manual balance changes
      • Add billing manual balance changes Copy
    • SMS Sender Identities
      • Introduction
      • List Sms Sender Identities
    • Member Authentication Configuration
      • Show loyalty club member authentication configuration
      • Show application member authentication configuration
      • Update member authentication configuration
      • Duplicate application member authentication configuration
      • Destroy member authentication configuration
    • Sender Identities
      • SMS Sender Identities
        • Introduction
        • List SMS Sender Identity
        • Show SMS Sender Identity
        • Create SMS Sender Identity
        • Update SMS Sender Identity
        • Delete SMS Sender Identity
      • Email Sender Identities
        • Introduction
        • List Email Sender Identities
        • Show Email Sender Identity
        • Create Email Sender Identity
        • Update Email Sender Identity
        • Delete Email Sender Identity
  • Members
    • Listing Members
      • List Members
      • List Members By Audience
    • Member Profile
      • Public Info
        • Show Member Public Info
        • Show Member Public Info by MSISDN
        • Show Member Public Info by Email
      • Person ID
        • Show Member Person ID
        • Show Member Person ID by MSISDN
        • Show Member Person ID by Email
      • Cars
        • Introduction
        • List Member Cars
        • Create Member Car
        • Show Member Car
        • Find Member Car By LPN
        • Find Member Car By Hashed LPN
        • Update Member Car
        • Renew Member Car
        • Destroy Member Car
        • Lookup a Car
      • Children
        • MemberChild Model
        • List Member Children
        • Register Member Child
        • Show Member Child
        • Update Member Child
        • Unregister Member Child
      • Groups
        • Add Member to Group
        • Remove Member from a Group
        • List Members of a Group
        • List Groups of a Member By MSISDN
        • List Groups of a Member by Email
        • List Groups of a Member
        • Add Members to Group
        • Remove Members from Group
      • Programs
        • By Member Token
          • List Member Programs
          • Update Member Programs
          • Add Member to Program
          • Remove Member from Program
        • List Member Programs
        • Update Member Programs
        • Add Member to Program
        • Remove Member from Program
      • Benefits
        • Introduction
        • List Member Benefits
        • Show Member Benefit
        • Show Member Parking Benefit By Car LPN
        • Show Member Parking Benefit By Hashed Car LPN
      • Offers
        • Show Offers Meta
        • Show Offer
        • Encode Offer
        • List Offers
        • Use Offer
        • Like Offer
        • Unlike Offer
        • Grant Offer
      • Rewards
        • Show Member Rewards Status
        • Grant Points
        • Cancel Transaction
      • Export
        • Export Member
        • Download Member Export
      • Misc
        • Show Member Messages History
        • Show Member Profile History
        • Generate Link
      • Create Member
      • Update Member
      • Validate Member
      • Register Member App Token
      • Show Member
      • Show Member By MSISDN
      • Show Member By Email
      • Show Member By Encrypted ID
      • Show Member By User ID
      • Destroy Member
    • Imports
      • Introduction
      • Create Members Import Request
      • Show Members Import Status
      • Show Members Import Bulk Status By Request Number
      • Show Members Import Bulk Status
    • Groups
      • Introduction
      • Groups
        • List Member Groups
        • Show Member Group
        • Create Member Group
        • Update Member Group
        • Destroy Member Group
      • Types
        • List Member Groups Types
    • Programs
      • Introduction
      • Create Program
      • List Programs
      • Show Program
      • Update Program
      • Destroy Program
    • Benefits
      • Introduction
      • Create Benefit
      • List Benefits
      • Show Benefit
      • Update Benefit
      • Archive Benefit
      • Restore Benefit
      • Destroy Benefit
    • Cars
      • Show Cars Configuration
      • Update Cars Configuration
    • Webhooks
      • Introduction
      • Subscriptions Management
        • List Members Notifications Subscriptions
        • Create Members Notifications Subscription
        • Update Members Notifications Subscription
        • Destroy Members Notifications Subscription
    • Misc
      • Generate Link
    • Receipts
      • Introduction
      • List Submissions
      • Show Submission
      • Update Submission
      • Check Limits Exceeded
    • Messages
      • Send "delivered" event for push message
      • Send "open" event for push message
  • Stores
    • V4 API
      • Stores
        • Store Model
        • List Stores
        • Show Store
        • Create Store
        • Update Store
        • Archive Store
        • Restore Store
        • Destroy Store
        • Update Store receipt information
      • Retailers
        • Retailer Model
        • List Retailers
        • Show Retailer
      • Categories
        • StoreCategory Model
        • List Stores Categories
        • Show Stores Category
        • Create Stores Category
        • Update Stores Category
        • Destroy Stores Category
      • Store Categories
        • Add Store To Category
        • Remove Store From Category
        • Bulk Update Store Categories
    • V3 API
      • Stores
        • List Stores
        • Show Store By Store ID
        • Show Store
        • Create Store
        • Update Store By Store ID
        • Update Store
        • Delete Store By Store ID
        • Delete Store
        • List User Stores
      • Categories
        • List Store Categories
      • Zones
        • List Stores Zones
      • Floors
        • List Stores Floors
      • Tenant Categories
        • List Stores Tenant Categories
      • Store events
        • Create Store Event
      • Departments
        • List Store Departments
        • Show Store Department By Department ID
        • Create Store Department
        • Update Store Department by Department ID
        • Update Store Department
  • Offers
    • Introduction
    • Offers
      • Show Offer
      • List Offers
      • List Offers Groups
      • Create Offers
      • Update Offers
      • Clone Offers
      • Grant Offers
      • Archive Offers
    • Collections
      • List Collections
      • Show Collection
      • Create Collection
      • Update Collection
      • Archive Collection
      • Update Collections Order
    • Image Templates
      • Introduction
      • List Offer Image Templates
      • Show Offer Image Template
      • Preview Offer Image Template
      • Create Offer Image Template
      • Update Offer Image Template
      • Destroy Offer Image Template
    • Files
      • Introduction
      • Show File Schema
  • Rewards
    • Points expiration notifications policy
      • Introduction
      • Show Points Expiration Notifications Policy
      • Update Points Expiration Notifications Policy
  • Triggerer
    • Rules
      • Introduction
      • List Triggerer Rules
      • Show Triggerer Rule
      • Create Triggerer Rule
      • Update Triggerer Rule
      • Pause Triggerer Rule
      • Start Triggerer Rule
      • Delete Triggerer Rule
    • Event Types Schema
      • Show Event Types Schema
    • Point Multipliers
      • Introduction
      • List Point Multipliers
      • Show Point Multiplier
      • Create Point Multiplier
      • Update Point Multiplier
      • Destroy Point Multiplier
  • CMS
    • Introduction
    • Venue Info
      • Introduction
      • Show Venue Info
      • Update Venue Info
    • Pages
      • Page Model
      • Components
        • Component Model and Schema
        • System Components
        • Custom Components
          • Introduction
          • List Custom Components
          • Show Custom Component
          • Create Custom Component
          • Update Custom Component
          • Archive Custom Component
          • Restore Custom Component
          • Destroy Custom Component
        • Show Components Schema
          GET
        • Validate Component
          POST
      • List Services
        GET
      • List Pages
        GET
      • Show Page
        GET
      • Create Page
        POST
      • Update Page
        PUT
      • Archive Page
        PUT
      • Restore Page
        PUT
      • Destroy Page
        DELETE
      • List Merge Properties
        GET
    • Website
      • Website Model
      • Website Domains
        • Introduction
        • List Website Domains
        • Show Website Domain
        • Create Website Domain
        • Update Website Domain
        • Destroy Website Domain
      • Show Website
      • Update Website
    • Landing Pages
      • Introduction
      • Landing Page Templates
        • Introduction
        • Bee Templates
          • Introduction
          • List Bee Landing Page Templates
          • List Bee Landing Page Templates Tags
          • Show Bee Landing Page Templates
        • List Landing Page Templates
        • Show Landing Page Template
        • Create Landing Page Template
        • Update Landing Page Template
        • Destroy Landing Page Template
      • List Landing Pages
      • Show Landing Page
      • Create Landing Page
      • Update Landing Page
      • Archive Landing Page
      • Restore Landing Page
      • Destroy Landing Page
    • Articles
      • Article Model
      • Articles Categories
        • List Articles Categories
        • Show Articles Category
        • Create Articles Category
        • Update Articles Category
        • Destroy Articles Category
      • List Articles
      • Show Article
      • Create Article
      • Update Article
      • Archive Article
      • Restore Article
      • Destroy Article
    • Events
      • Event Model
      • Events Groups
        • Introduction
        • List Events Groups
        • Show Events Group
        • Create Events Group
        • Update Events Group
        • Destroy Events Group
      • Events Categories
        • List Events Categories
        • Show Events Category
        • Create Events Category
        • Update Events Category
        • Destroy Events Category
      • List Events
      • Show Event
      • Create Event
      • Update Event
      • Archive Event
      • Restore Event
      • Destroy Event
    • Job Postings
      • Introduction
      • List Job Postings
      • Show Job Posting
      • Create Job Posting
      • Update Job Posting
      • Archive Job Posting
      • Restore Job Posting
      • Destroy Job Posting
    • Press Releases
      • PressRelease Model
      • List Press Releases
      • Show Press Release
      • Create Press Release
      • Update Press Release
      • Archive Press Release
      • Restore Press Release
      • Destroy Press Release
    • Tags
      • Tag Model
      • List Tags
      • Show Tag
      • Create Tag
      • Update Tag
      • Destroy Tag
    • Attachments
      • Attachment Model
      • List attachments
      • Show Attachment
      • Create Attachment
      • Update Attachment
      • Destroy Attachment
    • Service Messages
      • Introduction
      • List Service Messages
      • Show Service Message
      • Create Service Message
      • Update Service Message
      • Archive Service Message
      • Restore Service Message
      • Destroy Service Message
    • Mixed Content
      • Search Mixed Content
    • Redirections
      • Redirection Model
      • List Redirections
      • Show Redirection
      • Create Redirection
      • Update Redirection
      • Archive Redirection
      • Restore Redirection
      • Destroy Redirection
  • Events
    • Events
      • List Events
      • Show Event
      • Check Member Status
    • Checkins
      • Checkin Member to the Event
      • List Checkins
    • Invitations
      • Send Invitation
    • Registration
      • List Events
      • Show Event
      • Show Calendar
      • Register Member
      • Unregister Member
      • Show Member Available Actions
  • Games
    • Add Languages to Game
    • Add Component to Game
    • Show Game Schema
    • Show Single Game Schema
    • Show Game Components
    • List Games
    • Update Game Component
    • Delete Component Data
    • Show Game Details
    • Create Game
    • Update Game
    • Delete Game
    • Show Game Languages
  • Scraper
    • Scraper
      • Get scraper info
      • Run Scraper
      • Debug Scraper
    • Shopping mall
      • List Scraped Shopping Malls
      • Show Scraped Shopping Mall
      • Add Scraped Shopping Mall
      • Update Scraped Shopping Mall
      • Delete Scraped Shopping Mall
    • Shopping mall language
      • List ShoppingMall Languages
      • Show ShoppingMall Language
      • Add ShoppingMall Language
      • Update ShoppingMall Language
      • Delete ShoppingMall Language
    • Menu item
      • List Scraped Menu Items
      • Show Scraped Menu Item
      • Add Scraped Menu Item
      • Update Scraped Menu Item
      • Delete Scraped Menu Item
  • Files
    • Introduction
    • Uploads
      • Start Upload
      • Upload Part
      • Finish Upload
      • Activate Uploaded File
      • Upload status
    • Upload from URL
    • List File Records
    • Destroy File Records
  • Receipts
    • Introduction
    • Loyalty Club Configuration
    • Receipt Submissions
    • Show Receipts Configuration
    • Update Receipts Configuration
    • Show Receipt Submission
    • Update Receipt Submissions
    • List Receipt Submissions
  • Messaging History
    • Messages List v2
    • Show Choosen Member Messages History v2
    • Messages List
  1. Components

Component Model and Schema

Components#

Components are JSON objects that may be parts of other entities (e.g. Pages).
There are system-wide, predefined System Components, but it's possible to define own components with Custom Components API.

Example component#

{
    // Common properties:
    "type": "social_feed",
    "visible_until": "2024-09-19T11:01:00+0200",
    "visible_since": "2024-09-12T11:00:00+0200",
    "title": { "en": "Title", "pl": null },
    // Properties specific for type:
    "sub_title": { "en": "Subtitle", "pl": "Podtytuł" },
    "api_key": "123123",
    "feed_id": "123123",
    "container_id": "123123"
}

Common component properties#

PropertyTypeRequired?Description
typeenumyesDepends on current schema
visible_sincedatetimenoIf present, determines start of component visibility period
visible_untildatetimenoIf present, determines end of component visibility period
titleLocalizedContentno

Component Schema#

Component Schema is a JSON Schema that describes component model.
It is built by the API based on currently implemented System Components, Custom Components configured per Customer/Website and on general Customer/Website configuration.
It is based on polymorphism - applies to each component treated as an object that, depending on its type, will have different set of properties.

Example#

This is a simplified version of typical schema. The purpose of it is to demonstrate and describe the general idea. Please note the comments that describe specific elements and behaviours.
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$defs": {
    
    // $attributes may be treated as a "library" of standard properties for components
    
    "$attributes": {
      "text": {
        "type": ["object", "null"], "additionalProperties": false, "required": ["en"], // Implied from main website language
        "properties": {
          // Actual set of translation keys depends on customer/website configuration
          "en": { "type": "string", "minLength": 1, "maxLength": 50000 },
          "pl": {"type": ["string", "null"], "maxLength": 50000 }
        }
      },
      "html": {
        "type": ["object", "null"], "additionalProperties": false, "required": ["en"],
        "properties": {
          "en": { "type": "string", "minLength": 1, "maxLength": 50000 },
          "pl": {"type": ["string", "null"], "maxLength": 50000 }
        }
      },
      "image": {
        "type": ["object", "null"], "additionalProperties": false, "required": [ "url" ],
        "properties": { "url": { "type": "string", "format": "website-url", "minLength": 1 } }
      },
      "link": {
        "type": ["object", "null"], "additionalProperties": false,
        "properties": {
          "text": { "$ref": "#/$defs/$attributes/text" },
          "url": { "type": [ "string","null"], "format": "website-url", "minLength": 1 },
          "target": { "type": ["string", "null"], "enum": ["self","blank","parent","top"], "default": "self" }
        }
      },
      //
      // (...)
      // 
    },
    // This contains definitions of specific types of components
    "$components": {
      //
      // (...)
      //
      // Service page component
      "article_container": {
        // Describes where the component may be utilized. Current options are:
        //   * page      For Pages
        //   * layout    For Website Layout
        //   * general   For Both 
        "$purpose": "general",
        // $title and $description are used to describe purpose of the component to users
        "$title": "Article container",
        "$description": "",
        // When present, it means that component is dedicated for page for specific service(s)
        "$page_services": ["article_page"],
        "required": [],
        "additionalProperties": false,
        "properties": {
          "title": { "$ref": "#/$defs/$attributes/text" },
          // JSON Schema mechanisms require these common attributes to be present in each component instance
          "type": true,
          "visible_since": true,
          "visible_until": true
        }
      },
      //
      // (...)
      //
      // A layout component
      "footer_1": {
        "$purpose": "layout",
        "$title": "Footer",
        "$description": "Elements which appear in the footer of the page.",
        "$page_services": [],
        "required": [ "call_to_action_1", "links_1", "call_to_action_2", "social_media", "links_2" ],
        "additionalProperties": false,
        "properties": {
          "call_to_action_1": { "$ref": "#/$defs/$attributes/link" },
          "links_1": { "$ref": "#/$defs/$attributes/menu" },
          "call_to_action_2": { "$ref": "#/$defs/$attributes/link" },
          "social_media": { "const": true },
          "links_2": { "$ref": "#/$defs/$attributes/menu" },
          "type": true,
          "visible_since": true,
          "visible_until": true
        }
      },
      //
      // (...)
      //
      // A generic component
      "gallery": {
        "$purpose": "page",
        "$title": "Gallery",
        "$description": "A photo grid that allows to download a photo or display it in a modal.",
        "$page_services": [],
        "required": [],
        "additionalProperties": false,
        "properties": {
          "title": { "$ref": "#/$defs/$attributes/text" },
          "download": { "type": "string" },
          "images": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": { "image": { "$ref": "#/$defs/$attributes/image" } },
              "additionalProperties": false
            }
          },
          "type": true,
          "visible_since": true,
          "visible_until": true
        }
      },
      //
      // (...)
      //
      // Another generic component
      "html_block": {
        "$purpose": "general",
        "$title": "Rich text",
        "$description": "Allows you to add stylized text inline, optionally with photos or links.",
        "$page_services": [],
        "required": [],
        "additionalProperties": false,
        "properties": {
          "title": { "$ref": "#/$defs/$attributes/text" },
          "body": { "$ref": "#/$defs/$attributes/html" },
          "type": true,
          "visible_since": true,
          "visible_until": true
        }
      },
      //
      // (...)
      //
      // A custom component
      "links_list": {
        "$purpose": "page",
        "$title": "List of links",
        "$description": "",
        "$page_services": [],
        "required": ["title"],
        "properties": {
          "links": {
            "type": "array",
            "items": {
              "type": "object", "required": ["text"],
              "properties": {
                "url": { "type": "string", "format": "website-url", "minLength": 1 },
                "text": { "$ref": "#/$defs/$attributes/text" }
              },
              "additionalProperties": false
            }
          },
          "title": { "$ref": "#/$defs/$attributes/text" },
          "type": true,
          "visible_since": true,
          "visible_until": true
        },
        "additionalProperties": false
      }
    }
  },
  
  // The Actual Component Schema starts here
  
  "type": "object",
  "properties": {
    // Common component attributes
    "type": { "type": "string", "enum": ["article_container", "footer_1", "gallery", "html_block", "links_list"] },
    "visible_since": { "type": ["string", "null" ], "format": "date-time" },
    "visible_until": { "type": [ "string", "null" ], "format": "date-time" }
  },
  "required": ["type"],
  // Depending on the `type` property, the base component definition gets extended with specific properties 
  "allOf": [
    // (...)
    {
      "if": { "properties": { "type": { "const": "article_container" } } },
      "then": { "$ref": "#/$defs/$components/article_container" }
    },
    // (...)
    {
      "if": { "properties": { "type": { "const": "footer_1" } } },
      "then": { "$ref": "#/$defs/$components/footer_1" }
    },
    // (...)
    {
      "if": { "properties": { "type": { "const": "gallery" } } },
      "then": { "$ref": "#/$defs/$components/gallery" }
    },
    // (...)
    {
      "if": { "properties": { "type": { "const": "html_block" } } },
      "then": { "$ref": "#/$defs/$components/html_block" }
    },
    // (...)
    {
      "if": { "properties": { "type": { "const": "links_list" } } },
      "then": { "$ref": "#/$defs/$components/links_list" }
    }
  ]
}
Previous
Page Model
Next
System Components
Built with