Skip to main content
POST
/
v1
/
portal-content
curl -X POST \
  'https://api.appcharge.com/v1/portal-content' \
  -H 'Content-Type: application/json' \
  -H 'x-publisher-token: <x-publisher-token>' \
  -d '{
    "title": "Welcome to Our Game",
    "subTitle": "Everything you need to know",
    "bodyText": "This is the main content body with detailed information about getting started...",
    "headerImage": "https://cdn.example.com/images/header.jpg",
    "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
    "labels": ["tutorial", "beginner"],
    "state": "visible",
    "contentType": "article",
    "slug": "welcome-to-our-game",
    "visibility": "public",
    "translations": [
      {
        "isoCode": "fr-FR",
        "title": "Bienvenue dans notre jeu",
        "subTitle": "Tout ce que vous devez savoir",
        "bodyText": "Ceci est le contenu principal de l'\''article en français...",
        "headerImage": "https://cdn.example.com/images/header-fr.jpg",
        "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
        "labels": ["tutoriel", "débutant"]
      }
    ],
    "pages": ["6850249eb5bd5c59b9bab7e2", "692eb70d0293e07ab4895518"]
  }'
{
  "id": "507f1f77bcf86cd799439011",
  "title": "Welcome to Our Game",
  "subTitle": "Everything you need to know",
  "bodyText": "This is the main content body with detailed information...",
  "headerImage": "https://cdn.example.com/images/header.jpg",
  "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
  "labels": ["tutorial", "beginner"],
  "state": "visible",
  "contentType": "article",
  "slug": "welcome-to-our-game",
  "visibility": "public",
  "createdAt": "2025-10-20T10:30:00.000Z",
  "updatedAt": "2025-10-20T10:30:00.000Z",
  "translations": [
    {
      "isoCode": "fr-FR",
      "title": "Bienvenue dans notre jeu",
      "subTitle": "Tout ce que vous devez savoir",
      "bodyText": "Ceci est le contenu principal de l'article en français...",
      "headerImage": "https://cdn.example.com/images/header-fr.jpg",
      "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
      "labels": ["tutoriel", "débutant"]
    }
  ],
  "pages": [
    {
      "id": "6850249eb5bd5c59b9bab7e2",
      "pageName": "FAQs"
    },
    {
      "id": "692eb70d0293e07ab4895518",
      "pageName": "Events"
    }
  ]
}
curl -X POST \
  'https://api.appcharge.com/v1/portal-content' \
  -H 'Content-Type: application/json' \
  -H 'x-publisher-token: <x-publisher-token>' \
  -d '{
    "title": "Welcome to Our Game",
    "subTitle": "Everything you need to know",
    "bodyText": "This is the main content body with detailed information about getting started...",
    "headerImage": "https://cdn.example.com/images/header.jpg",
    "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
    "labels": ["tutorial", "beginner"],
    "state": "visible",
    "contentType": "article",
    "slug": "welcome-to-our-game",
    "visibility": "public",
    "translations": [
      {
        "isoCode": "fr-FR",
        "title": "Bienvenue dans notre jeu",
        "subTitle": "Tout ce que vous devez savoir",
        "bodyText": "Ceci est le contenu principal de l'\''article en français...",
        "headerImage": "https://cdn.example.com/images/header-fr.jpg",
        "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
        "labels": ["tutoriel", "débutant"]
      }
    ],
    "pages": ["6850249eb5bd5c59b9bab7e2", "692eb70d0293e07ab4895518"]
  }'
{
  "id": "507f1f77bcf86cd799439011",
  "title": "Welcome to Our Game",
  "subTitle": "Everything you need to know",
  "bodyText": "This is the main content body with detailed information...",
  "headerImage": "https://cdn.example.com/images/header.jpg",
  "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
  "labels": ["tutorial", "beginner"],
  "state": "visible",
  "contentType": "article",
  "slug": "welcome-to-our-game",
  "visibility": "public",
  "createdAt": "2025-10-20T10:30:00.000Z",
  "updatedAt": "2025-10-20T10:30:00.000Z",
  "translations": [
    {
      "isoCode": "fr-FR",
      "title": "Bienvenue dans notre jeu",
      "subTitle": "Tout ce que vous devez savoir",
      "bodyText": "Ceci est le contenu principal de l'article en français...",
      "headerImage": "https://cdn.example.com/images/header-fr.jpg",
      "thumbnailImage": "https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg",
      "labels": ["tutoriel", "débutant"]
    }
  ],
  "pages": [
    {
      "id": "6850249eb5bd5c59b9bab7e2",
      "pageName": "FAQs"
    },
    {
      "id": "692eb70d0293e07ab4895518",
      "pageName": "Events"
    }
  ]
}

Headers

x-publisher-token
string
required

Publisher token.

Body

application/json
title
string
required

Content title.

Example:

"Welcome to Our Game"

headerImage
string
required

Content header image URL. Can be an external link or the URL of an image from the Assets Library.

Example:

"https://cdn.example.com/images/header.jpg"

thumbnailImage
string
required

Content thumbnail image URL. Can be an external link or the URL of an image from the Assets Library.

Example:

"https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg"

contentType
enum<string>
required

Content type.

Available options:
article,
news
Example:

"article"

subTitle
string

Content description.

Example:

"Everything you need to know"

bodyText
string

Content body text.

Example:

"This is the main content body with detailed information about getting started..."

labels
string[]

List of labels associated with the content.

Example:
["tutorial", "beginner"]
state
enum<string>
default:visible

Current state of the content.

Available options:
visible,
hidden,
scheduled
Example:

"visible"

publishDate
string<date-time>

Content publish date. Use for scheduling content.

Example:

"2025-10-20T00:00:00.000Z"

pages
string[]

List of page IDs where this content will appear. The Page ID can be found in the Pages section of the Publisher Dashboard.

Note: If you don't pass this property, or if you assign the content to a page that doesn't exist, the content will be created but won't be displayed in the Game Portal.

Example:
[
"6850249eb5bd5c59b9bab7e2",
"692eb70d0293e07ab4895518"
]
slug
string

Content slug. If not provided, this value is auto-generated.

Example:

"welcome-to-our-game"

visibility
enum<string>
default:public

Content visibility level.

Available options:
public,
private
Example:

"public"

translations
object[]

List of content translations.

Note: You must first add the language in the Publisher Dashboard before adding its translation.

Response

Content created successfully.

id
string

Content ID.

Example:

"507f1f77bcf86cd799439011"

title
string

Content title.

Example:

"Welcome to Our Game"

subTitle
string

Content description.

Example:

"Everything you need to know"

bodyText
string

Content body text.

Example:

"This is the main content body with detailed information..."

headerImage
string

Content header image URL.

Example:

"https://cdn.example.com/images/header.jpg"

thumbnailImage
string

Content thumbnail image URL.

Example:

"https://media.appcharge.com/media/25cb4861ec8924a6b69a0f59/book-shelf1920.jpg"

labels
string[]

List of labels associated with the content.

Example:
["tutorial", "beginner"]
state
enum<string>
default:hidden

Current state of the content.

Available options:
visible,
hidden,
scheduled
Example:

"hidden"

contentType
enum<string>

Content type.

Available options:
article,
news
Example:

"article"

publishDate
string<date-time>

Content publish date. Use for scheduling content.

Example:

"2025-10-20T00:00:00.000Z"

slug
string

Content slug. If not provided, this value is auto-generated.

Example:

"welcome-to-our-game"

visibility
enum<string>
default:public

Content visibility level.

Available options:
public,
private
Example:

"public"

createdAt
string<date-time>

Created date.

Example:

"2025-10-15T10:30:00.000Z"

updatedAt
string<date-time>

Updated date.

Example:

"2025-10-19T14:20:00.000Z"

translations
object[]

List of content translations.

pages
object[]

List of pages where this content appears.

Example:
[
{
"id": "68b0249eb5bd5c59b9bab7e2",
"pageName": "FAQs"
},
{
"id": "692eb70d0293e07ab4895518",
"pageName": "Events"
}
]