400
invalid_requestThe request did not satisfy the documented contract.
Beladed Loyalty API
Promotion - Create through the reviewed Beladed Loyalty contract.
/api/incentive/promotion/createcurl --request POST 'https://api.beladed.dev/api/incentive/promotion/create' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-Beladed-API-Key: BELADED_SECRET_KEY' \
--data '{
"title": "Summer Special Promotion",
"description": "Enjoy exclusive discounts during our Summer Sale!",
"tags": "sale,summer,discount",
"category": "Retail & E-Commerce",
"price": "19.99",
"tokenAmount": 50,
"redirectUrl": "https://merchant.example.invalid/beladed/return",
"couponCode": "SUMMER2024",
"websiteUrl": "https://merchant.example.invalid",
"buttonText": "Shop Now",
"releaseDate": "2024-06-01",
"releaseTime": "08:00:00",
"expiresDate": "2024-08-31",
"expiresTime": "23:59:59",
"activationType": "auto",
"profilePhotoUrl": "https://merchant.example.invalid",
"coverPhotoUrl": "https://merchant.example.invalid",
"videoPlaybackUrl": "https://merchant.example.invalid",
"audioPlaybackUrl": "https://merchant.example.invalid",
"quantityTotal": 1000,
"quantityLeft": 900,
"livestreamsNeeded": 50,
"subscribersNeeded": 500,
"followersNeeded": 600,
"connectAccountsNeeded": 300,
"tournamentsPlaysNeeded": 20,
"tournamentsWinsNeeded": 10,
"universityToursNeeded": 5,
"sharesNeeded": 400,
"votesNeeded": 800,
"isActive": true
}'const response = await fetch("https://api.beladed.dev/api/incentive/promotion/create", {
method: "POST",
headers: {
"Accept": "application/json",
"Content-Type": "application/json",
"X-Beladed-API-Key": "BELADED_SECRET_KEY"
},
body: JSON.stringify({
"title": "Summer Special Promotion",
"description": "Enjoy exclusive discounts during our Summer Sale!",
"tags": "sale,summer,discount",
"category": "Retail & E-Commerce",
"price": "19.99",
"tokenAmount": 50,
"redirectUrl": "https://merchant.example.invalid/beladed/return",
"couponCode": "SUMMER2024",
"websiteUrl": "https://merchant.example.invalid",
"buttonText": "Shop Now",
"releaseDate": "2024-06-01",
"releaseTime": "08:00:00",
"expiresDate": "2024-08-31",
"expiresTime": "23:59:59",
"activationType": "auto",
"profilePhotoUrl": "https://merchant.example.invalid",
"coverPhotoUrl": "https://merchant.example.invalid",
"videoPlaybackUrl": "https://merchant.example.invalid",
"audioPlaybackUrl": "https://merchant.example.invalid",
"quantityTotal": 1000,
"quantityLeft": 900,
"livestreamsNeeded": 50,
"subscribersNeeded": 500,
"followersNeeded": 600,
"connectAccountsNeeded": 300,
"tournamentsPlaysNeeded": 20,
"tournamentsWinsNeeded": 10,
"universityToursNeeded": 5,
"sharesNeeded": 400,
"votesNeeded": 800,
"isActive": true
})
});
const data = await response.json();import requests
response = requests.request(
"POST",
"https://api.beladed.dev/api/incentive/promotion/create",
headers={"Accept":"application/json","Content-Type":"application/json","X-Beladed-API-Key":"BELADED_SECRET_KEY"},
json={
"title": "Summer Special Promotion",
"description": "Enjoy exclusive discounts during our Summer Sale!",
"tags": "sale,summer,discount",
"category": "Retail & E-Commerce",
"price": "19.99",
"tokenAmount": 50,
"redirectUrl": "https://merchant.example.invalid/beladed/return",
"couponCode": "SUMMER2024",
"websiteUrl": "https://merchant.example.invalid",
"buttonText": "Shop Now",
"releaseDate": "2024-06-01",
"releaseTime": "08:00:00",
"expiresDate": "2024-08-31",
"expiresTime": "23:59:59",
"activationType": "auto",
"profilePhotoUrl": "https://merchant.example.invalid",
"coverPhotoUrl": "https://merchant.example.invalid",
"videoPlaybackUrl": "https://merchant.example.invalid",
"audioPlaybackUrl": "https://merchant.example.invalid",
"quantityTotal": 1000,
"quantityLeft": 900,
"livestreamsNeeded": 50,
"subscribersNeeded": 500,
"followersNeeded": 600,
"connectAccountsNeeded": 300,
"tournamentsPlaysNeeded": 20,
"tournamentsWinsNeeded": 10,
"universityToursNeeded": 5,
"sharesNeeded": 400,
"votesNeeded": 800,
"isActive": true
},
timeout=30,
)
response.raise_for_status()
data = response.json()<?php
$client = curl_init("https://api.beladed.dev/api/incentive/promotion/create");
curl_setopt_array($client, [
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => ["Accept: application/json","Content-Type: application/json","X-Beladed-API-Key: BELADED_SECRET_KEY"],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode({
"title": "Summer Special Promotion",
"description": "Enjoy exclusive discounts during our Summer Sale!",
"tags": "sale,summer,discount",
"category": "Retail & E-Commerce",
"price": "19.99",
"tokenAmount": 50,
"redirectUrl": "https://merchant.example.invalid/beladed/return",
"couponCode": "SUMMER2024",
"websiteUrl": "https://merchant.example.invalid",
"buttonText": "Shop Now",
"releaseDate": "2024-06-01",
"releaseTime": "08:00:00",
"expiresDate": "2024-08-31",
"expiresTime": "23:59:59",
"activationType": "auto",
"profilePhotoUrl": "https://merchant.example.invalid",
"coverPhotoUrl": "https://merchant.example.invalid",
"videoPlaybackUrl": "https://merchant.example.invalid",
"audioPlaybackUrl": "https://merchant.example.invalid",
"quantityTotal": 1000,
"quantityLeft": 900,
"livestreamsNeeded": 50,
"subscribersNeeded": 500,
"followersNeeded": 600,
"connectAccountsNeeded": 300,
"tournamentsPlaysNeeded": 20,
"tournamentsWinsNeeded": 10,
"universityToursNeeded": 5,
"sharesNeeded": 400,
"votesNeeded": 800,
"isActive": true
}),
]);
$response = curl_exec($client);require "net/http"
require "json"
uri = URI("https://api.beladed.dev/api/incentive/promotion/create")
request = Net::HTTP::Post.new(uri)
request["Accept"] = "application/json"
request["Content-Type"] = "application/json"
request["X-Beladed-API-Key"] = "BELADED_SECRET_KEY"
request.body = "{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(request) }var request = java.net.http.HttpRequest.newBuilder()
.uri(java.net.URI.create("https://api.beladed.dev/api/incentive/promotion/create"))
.header("Accept", "application/json")
.header("Content-Type", "application/json")
.header("X-Beladed-API-Key", "BELADED_SECRET_KEY")
.method("POST", java.net.http.HttpRequest.BodyPublishers.ofString("{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}"))
.build();
var response = java.net.http.HttpClient.newHttpClient().send(request, java.net.http.HttpResponse.BodyHandlers.ofString());package main
import (
"bytes"
"net/http"
)
func callBeladed() (*http.Response, error) {
body := []byte("{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}")
request, err := http.NewRequest("POST", "https://api.beladed.dev/api/incentive/promotion/create", bytes.NewReader(body))
if err != nil { return nil, err }
request.Header.Set("Accept", "application/json")
request.Header.Set("Content-Type", "application/json")
request.Header.Set("X-Beladed-API-Key", "BELADED_SECRET_KEY")
return http.DefaultClient.Do(request)
}using var client = new HttpClient();
using var request = new HttpRequestMessage(new HttpMethod("POST"), "https://api.beladed.dev/api/incentive/promotion/create");
request.Headers.TryAddWithoutValidation("Accept", "application/json");
request.Headers.TryAddWithoutValidation("Content-Type", "application/json");
request.Headers.TryAddWithoutValidation("X-Beladed-API-Key", "BELADED_SECRET_KEY");
request.Content = new StringContent("{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}", System.Text.Encoding.UTF8, "application/json");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();var request = URLRequest(url: URL(string: "https://api.beladed.dev/api/incentive/promotion/create")!)
request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Accept")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.setValue("BELADED_SECRET_KEY", forHTTPHeaderField: "X-Beladed-API-Key")
request.httpBody = "{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}".data(using: .utf8)
let (data, response) = try await URLSession.shared.data(for: request)val request = okhttp3.Request.Builder()
.url("https://api.beladed.dev/api/incentive/promotion/create")
.addHeader("Accept", "application/json")
.addHeader("Content-Type", "application/json")
.addHeader("X-Beladed-API-Key", "BELADED_SECRET_KEY")
.method("POST", okhttp3.RequestBody.create(okhttp3.MediaType.get("application/json"), "{\n \"title\": \"Summer Special Promotion\",\n \"description\": \"Enjoy exclusive discounts during our Summer Sale!\",\n \"tags\": \"sale,summer,discount\",\n \"category\": \"Retail & E-Commerce\",\n \"price\": \"19.99\",\n \"tokenAmount\": 50,\n \"redirectUrl\": \"https://merchant.example.invalid/beladed/return\",\n \"couponCode\": \"SUMMER2024\",\n \"websiteUrl\": \"https://merchant.example.invalid\",\n \"buttonText\": \"Shop Now\",\n \"releaseDate\": \"2024-06-01\",\n \"releaseTime\": \"08:00:00\",\n \"expiresDate\": \"2024-08-31\",\n \"expiresTime\": \"23:59:59\",\n \"activationType\": \"auto\",\n \"profilePhotoUrl\": \"https://merchant.example.invalid\",\n \"coverPhotoUrl\": \"https://merchant.example.invalid\",\n \"videoPlaybackUrl\": \"https://merchant.example.invalid\",\n \"audioPlaybackUrl\": \"https://merchant.example.invalid\",\n \"quantityTotal\": 1000,\n \"quantityLeft\": 900,\n \"livestreamsNeeded\": 50,\n \"subscribersNeeded\": 500,\n \"followersNeeded\": 600,\n \"connectAccountsNeeded\": 300,\n \"tournamentsPlaysNeeded\": 20,\n \"tournamentsWinsNeeded\": 10,\n \"universityToursNeeded\": 5,\n \"sharesNeeded\": 400,\n \"votesNeeded\": 800,\n \"isActive\": true\n}"))
.build()
val response = okhttp3.OkHttpClient().newCall(request).execute()
This operation has no documented parameters.
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"tags": {
"type": "string"
},
"category": {
"type": "string"
},
"price": {
"type": "string"
},
"tokenAmount": {
"type": "integer"
},
"redirectUrl": {
"type": "string"
},
"couponCode": {
"type": "string"
},
"websiteUrl": {
"type": "string"
},
"buttonText": {
"type": "string"
},
"releaseDate": {
"type": "string"
},
"releaseTime": {
"type": "string"
},
"expiresDate": {
"type": "string"
},
"expiresTime": {
"type": "string"
},
"activationType": {
"type": "string"
},
"profilePhotoUrl": {
"type": "string"
},
"coverPhotoUrl": {
"type": "string"
},
"videoPlaybackUrl": {
"type": "string"
},
"audioPlaybackUrl": {
"type": "string"
},
"quantityTotal": {
"type": "integer"
},
"quantityLeft": {
"type": "integer"
},
"livestreamsNeeded": {
"type": "integer"
},
"subscribersNeeded": {
"type": "integer"
},
"followersNeeded": {
"type": "integer"
},
"connectAccountsNeeded": {
"type": "integer"
},
"tournamentsPlaysNeeded": {
"type": "integer"
},
"tournamentsWinsNeeded": {
"type": "integer"
},
"universityToursNeeded": {
"type": "integer"
},
"sharesNeeded": {
"type": "integer"
},
"votesNeeded": {
"type": "integer"
},
"isActive": {
"type": "boolean"
}
}
}{
"title": "Summer Special Promotion",
"description": "Enjoy exclusive discounts during our Summer Sale!",
"tags": "sale,summer,discount",
"category": "Retail & E-Commerce",
"price": "19.99",
"tokenAmount": 50,
"redirectUrl": "https://merchant.example.invalid/beladed/return",
"couponCode": "SUMMER2024",
"websiteUrl": "https://merchant.example.invalid",
"buttonText": "Shop Now",
"releaseDate": "2024-06-01",
"releaseTime": "08:00:00",
"expiresDate": "2024-08-31",
"expiresTime": "23:59:59",
"activationType": "auto",
"profilePhotoUrl": "https://merchant.example.invalid",
"coverPhotoUrl": "https://merchant.example.invalid",
"videoPlaybackUrl": "https://merchant.example.invalid",
"audioPlaybackUrl": "https://merchant.example.invalid",
"quantityTotal": 1000,
"quantityLeft": 900,
"livestreamsNeeded": 50,
"subscribersNeeded": 500,
"followersNeeded": 600,
"connectAccountsNeeded": 300,
"tournamentsPlaysNeeded": 20,
"tournamentsWinsNeeded": 10,
"universityToursNeeded": 5,
"sharesNeeded": 400,
"votesNeeded": 800,
"isActive": true
}
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
"requestId": {
"type": "string"
}
}
}{
"data": {
"id": "id_demo_001",
"status": "available"
},
"requestId": "req_demo_001"
}
invalid_requestThe request did not satisfy the documented contract.
authentication_requiredThe credential is missing or invalid.
not_authorizedThe account, product scope, permission, or origin is not eligible.
not_foundThe requested public or account-owned resource was not found.
rate_limitedRetry after the current product limit resets.
This operation is published from reviewed repository contracts. Source metadata is included for traceability without exposing internal implementation details.