POST
/
api
/
loyalty
/
badges
curl --request POST \
  --url https://admin.snagsolutions.io/api/loyalty/badges \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <api-key>' \
  --data '{
  "organizationId": "123e4567-e89b-12d3-a456-426614174222",
  "websiteId": "123e4567-e89b-12d3-a456-426614174111",
  "name": "Example Badge",
  "description": "Example description",
  "imageUrl": "https://example.com/image.png",
  "rules": [
    {
      "type": "rule",
      "loyaltyRuleId": "123e4567-e89b-12d3-a456-426614174111"
    }
  ]
}'
{
  "id": "123e4567-e89b-12d3-a456-426614174333",
  "name": "Example Badge",
  "description": "Example description",
  "imageUrl": "https://example.com/image.png",
  "loyaltyConditions": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174333",
      "type": "rule",
      "description": "Example description",
      "amount": 10,
      "repeatCount": 5,
      "requiredCount": 5,
      "loyaltyRuleGroupId": "123e4567-e89b-12d3-a456-426614174333",
      "association": [
        {
          "loyaltyRule": {
            "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
            "name": "<string>"
          },
          "loyaltyBadge": {
            "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
            "name": "<string>"
          },
          "loyaltyRuleGroup": {
            "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
            "name": "<string>"
          },
          "loyaltyCurrency": {
            "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
            "name": "<string>"
          },
          "loyaltyLeaderboardView": {
            "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
            "name": "<string>"
          }
        }
      ],
      "loyaltyCurrencyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "csvUrl": "https://example.com/file.csv"
    }
  ],
  "LoyaltyBadgeUser": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174333",
      "userId": "123e4567-e89b-12d3-a456-426614174222",
      "websiteId": "123e4567-e89b-12d3-a456-426614174111",
      "organizationId": "123e4567-e89b-12d3-a456-426614174222",
      "status": "active",
      "loyaltyBadgeId": "123e4567-e89b-12d3-a456-426614174333",
      "progress": "<any>"
    }
  ]
}

Authorizations

X-API-KEY
string
header
required

Body

application/json
Body

Schema for creating a new badge.

organizationId
string
required

UUID of the organization (optional, converted to lowercase)

Example:

"123e4567-e89b-12d3-a456-426614174222"

websiteId
string
required

UUID of the website (optional, converted to lowercase)

Example:

"123e4567-e89b-12d3-a456-426614174111"

name
string
required

The name of the badge

Example:

"Example Badge"

imageUrl
string
required

The URL of the badge image

Example:

"https://example.com/image.png"

rules
object[]
required

Array of rules for the badge

Example:
[
  {
    "type": "rule",
    "loyaltyRuleId": "123e4567-e89b-12d3-a456-426614174111"
  }
]
description
string

The description of the badge

Example:

"Example description"

Response

200
application/json
200

Response returned upon successful creation of the badge.

id
string
required

UUID of the badge (converted to lowercase)

Example:

"123e4567-e89b-12d3-a456-426614174333"

name
string
required

The name of the badge

Example:

"Example Badge"

description
string | null
required

The description of the badge

Example:

"Example description"

imageUrl
string | null
required

The URL of the badge image

Example:

"https://example.com/image.png"

loyaltyConditions
object[]
required

Array of conditions of the badge

Schema for a loyalty condition rule.

LoyaltyBadgeUser
object[]

Array of user badges