Skip to content
POST/api/v1/white-label

Configure white-label

Upserts the caller's org white-label branding (`white_label_configs`, on-conflict org_id). Accepted fields, all optional and all validated by a STRICT schema that rejects anything else: companyName (≤100), logoUrl and faviconUrl (must be https URLs), primaryColor and accentColor (#rrggbb), supportEmail, customCss (≤10 KiB), hideEvalguardBranding, loginMessage and welcomeMessage (≤500). Custom domain is NOT settable here — the schema has no customDomain key, there is no DNS challenge or domain verification of any kind, and nothing routes requests on the column. The org comes from the caller's membership row, never from the body; owner/admin only (requiredRole admin, so a scoped API key is capped at its creator's role). Audited as white_label.update.

Authentication

Send Authorization: Bearer YOUR_API_KEY on every request. Generate API keys at /dashboard/settings/api-keys.

Response

200 example

{
  "success": true
}

All status codes

200Configured.
400(no description)
401(no description)
403Forbidden — insufficient role for this operation.
404Not Found.
409Conflict — CONFLICT.
429(no description)
500Internal Server Error — DB_ERROR.

Code samples

cURL

curl -X POST \
  https://evalguard.ai/api/v1/white-label \
  -H "Authorization: Bearer $EVALGUARD_API_KEY"

TypeScript

// The TypeScript SDK (@evalguard/sdk) exposes TYPED methods — runEval,
// getEval, runSecurityScan, checkFirewall, … — not a generic request().
// For an arbitrary endpoint, call it directly:

const res = await fetch("https://evalguard.ai/api/v1/white-label", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.EVALGUARD_API_KEY}` },
});
console.log(res.status, await res.json());

Python

# The Python SDK (pip install evalguardai) exposes TYPED methods on
# EvalGuardClient — run_eval, get_eval, … — not a generic request().
# For an arbitrary endpoint, call it directly:

import os
import requests

headers = {"Authorization": f"Bearer {os.environ['EVALGUARD_API_KEY']}"}

response = requests.request("POST", "https://evalguard.ai/api/v1/white-label", headers=headers)
print(response.status_code, response.json())

Go

package main

import (
	"context"
	"fmt"
	"net/http"
	"os"
)

func main() {
	req, _ := http.NewRequestWithContext(context.Background(), "POST", "https://evalguard.ai/api/v1/white-label", nil)
	req.Header.Set("Authorization", "Bearer "+os.Getenv("EVALGUARD_API_KEY"))
	resp, err := http.DefaultClient.Do(req)
	if err != nil { panic(err) }
	defer resp.Body.Close()
	fmt.Println(resp.Status)
}

Errors

400401403404409429500

Other Admin endpoints