Verify Login
POST ?action=verify_login
Verifies a customer's credentials against their activation. Accepts either Xtream or editor credentials. Returns full account and subscription data, making it suitable as the authentication backend for a customer portal.
Request Parameters
username — string — Required. Xtream or editor username.
password — string — Required. Xtream or editor password.
You can send either xtream or editor credentials for authorization
Response Fields
activation_id — integer — Activation ID
username — string — Xtream username
customer_email — string — Customer email address
customer_name — string or null — Customer full name
status — string — active, trial_active, expired, or suspended
expiration_date — string or null — Expiration datetime (UTC)
activated_at — string or null — Activation datetime (UTC)
connection_type — string — m3u or mac
xtream_host — string — Resolved host URL
xtream_username — string — Xtream username
xtream_password — string — Xtream password
editor_username — string — Editor credential username (empty string if not configured)
editor_password — string — Editor credential password (empty string if not configured)
m3u_url — string — Generated M3U playlist URL
epg_url — string — Generated EPG URL
product — object or null — Linked product (see Product Object below)
bouquets — array — Assigned bouquet objects (see Bouquet Object below)
eligible_products — array — Products available for renewal based on current connection count, excluding the free trial product (see Product Object below)
Product Object
id — integer — Product ID
name — string — Product name
alternate_name — string or null — Alternate display name
price_decimal — float — Product price
currency — string — Currency code (e.g. USD)
duration_months — integer — Subscription duration in months
connections — integer — Number of simultaneous connections allowed
Bouquet Object
id — integer — Bouquet ID
name — string — Bouquet name
display_name — string or null — Customer-facing display name. Prefer this over "name" when available.
category — string — live, vod, or series
is_enabled — integer — 1 if enabled
Example
curl -X POST "https://YOUR_DOMAIN/api/api.php?action=verify_login" \
-H "X-Panelr-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username": "demo_abc123", "password": "secret"}'