MAKEUGC PLATFORM API · DOCS V2
Authentication
Authenticate every request with a Platform API key and keep credentials in your server environment.
Create a key
Sign in to the MakeUGC dashboard, open Settings → API Integration and create a Platform API key. If key creation is unavailable, check your subscription’s API entitlement or contact support.
Send the header
Every endpoint in this reference requires
X-Api-Key: YOUR_API_KEY. Header names are case-insensitive.
A Bearer token or query-string API key is not a substitute.
curl --fail-with-body --max-time 120 -X GET "https://app.makeugc.ai/api/platform/enterprise/models" \
-H "X-Api-Key: $MAKEUGC_API_KEY"
// Run on your server with Node.js 20+.
const apiKey = process.env.MAKEUGC_API_KEY;
if (!apiKey) throw new Error("Set MAKEUGC_API_KEY first");
const response = await fetch("https://app.makeugc.ai/api/platform/enterprise/models", {
method: "GET",
headers: {
"X-Api-Key": apiKey,
},
signal: AbortSignal.timeout(120000),
});
const text = await response.text();
if (!response.ok) {
throw new Error(`HTTP ${response.status}: ${text} (request ${response.headers.get("x-request-id")})`);
}
const result = JSON.parse(text);
console.log(result);
# Install the requests package before running.
import os
import requests
response = requests.get(
"https://app.makeugc.ai/api/platform/enterprise/models",
headers={"X-Api-Key": os.environ["MAKEUGC_API_KEY"]},
timeout=120,
)
if not response.ok:
raise RuntimeError(f"HTTP {response.status_code}: {response.text} "
f"(request {response.headers.get('x-request-id')})")
print(response.json())
Send Content-Type: application/json for JSON POST requests.
Custom avatar creation uses multipart/form-data; let your
HTTP client set its boundary.
Protect your key
- Keep the key in server environment variables or your secrets manager.
- Call MakeUGC from your backend. Never ship the key in browser JavaScript, mobile bundles, public repositories or documentation.
- Do not put the key in URLs or logs. Replace or revoke an exposed key from your account’s API settings.
-
The key identifies the account. Do not send
user_idor client-supplied billing controls.
Access and troubleshooting
A missing, invalid or inactive key returns 401. Feature
access and generation credits are checked separately; a valid key does
not guarantee permission to use every feature. A subscription
restriction can return 403.
{
"status": false,
"message": "Not authenticated"
}
Check the response’s x-request-id header when
troubleshooting. That value identifies the HTTP request; it is different
from a generated job’s request_id.