Code Statistics
GET /v1/campaigns/codes/statsReturns aggregate statistics about all codes generated for a campaign, broken down by status.
Authentication
Section titled “Authentication”| Header | Required | Value |
|---|---|---|
X-API-Secret | Yes | Your secret key |
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | Campaign slug |
Request Examples
Section titled “Request Examples”curl -X GET "https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo" \ -H "X-API-Secret: sk_live_your_secret_key"const response = await fetch( 'https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo', { headers: { 'X-API-Secret': 'sk_live_your_secret_key' }, });
const data = await response.json();console.log(`Total: ${data.data.totalCodes}, Active: ${data.data.activeCodes}`);import requests
response = requests.get( "https://api.gamifyhost.com/v1/campaigns/codes/stats", headers={"X-API-Secret": "sk_live_your_secret_key"}, params={"slug": "summer-promo"},)
data = response.json()stats = data["data"]print(f"Total: {stats['totalCodes']}, Active: {stats['activeCodes']}, Redeemed: {stats['redeemedCodes']}")import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.net.URI;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo")) .header("X-API-Secret", "sk_live_your_secret_key") .GET() .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());System.out.println(response.body());req, _ := http.NewRequest("GET", "https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo", nil)req.Header.Set("X-API-Secret", "sk_live_your_secret_key")
resp, err := http.DefaultClient.Do(req)if err != nil { log.Fatal(err)}defer resp.Body.Close()
var result map[string]interface{}json.NewDecoder(resp.Body).Decode(&result)fmt.Println(result["data"])$ch = curl_init('https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo');curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ 'X-API-Secret: sk_live_your_secret_key', ],]);
$response = curl_exec($ch);curl_close($ch);
$data = json_decode($response, true);echo "Total: {$data['data']['totalCodes']}, Active: {$data['data']['activeCodes']}\n";require 'net/http'require 'json'
uri = URI('https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo')req = Net::HTTP::Get.new(uri)req['X-API-Secret'] = 'sk_live_your_secret_key'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }data = JSON.parse(res.body)puts "Total: #{data['data']['totalCodes']}, Active: #{data['data']['activeCodes']}"using var client = new HttpClient();client.DefaultRequestHeaders.Add("X-API-Secret", "sk_live_your_secret_key");
var response = await client.GetAsync( "https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo");var json = await response.Content.ReadAsStringAsync();Console.WriteLine(json);import 'dart:convert';import 'package:http/http.dart' as http;
final response = await http.get( Uri.parse('https://api.gamifyhost.com/v1/campaigns/codes/stats?slug=summer-promo'), headers: {'X-API-Secret': 'sk_live_your_secret_key'},);
final data = jsonDecode(response.body);print('Total: ${data['data']['totalCodes']}, Active: ${data['data']['activeCodes']}');Response
Section titled “Response”Status: 200 OK
{ "status": "success", "data": { "totalCodes": 150, "activeCodes": 120, "redeemedCodes": 25, "expiredCodes": 3, "revokedCodes": 2, "totalBatches": 3 }}Response Fields
Section titled “Response Fields”| Field | Type | Description |
|---|---|---|
totalCodes | integer | Total codes generated across all batches |
activeCodes | integer | Codes available for redemption |
redeemedCodes | integer | Codes that have been redeemed |
expiredCodes | integer | Codes that have expired |
revokedCodes | integer | Codes that were manually revoked |
totalBatches | integer | Number of code batches generated |
Errors
Section titled “Errors”| Code | Message |
|---|---|
404 | Campaign not found |