# GET INFO / Query Actions Complete documentation for all data retrieval endpoints in the XUI.ONE Admin API. ## 📋 Overview GET INFO endpoints allow you to retrieve information about your XUI.ONE panel resources without making modifications. These are **read-only operations** that return data in JSON format. ### Available Endpoints | Endpoint | Description | Returns | |----------|-------------|---------| | `get_lines` | Get all subscription lines | Array of line objects | | `get_users` | Get all user accounts | Array of user objects | | `get_streams` | Get all live streams | Array of stream objects | | `get_channels` | Get all channels | Array of channel objects | | `get_movies` | Get all VOD movies | Array of movie objects | | `get_series_list` | Get all TV series | Array of series objects | | `get_episodes` | Get all episodes | Array of episode objects | | `get_mags` | Get all MAG devices | Array of MAG objects | | `get_enigmas` | Get all Enigma2 devices | Array of Enigma2 objects | | `get_stations` | Get all radio stations | Array of station objects | | `get_packages` | Get all subscription packages | Array of package objects | --- ## 🔍 Common Usage Patterns ### Basic Query ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=ACTION_NAME" ``` ### With Pagination (where supported) ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=ACTION_NAME&limit=100&offset=0" ``` ### With Filtering (where supported) ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_episodes&series_id=123" ``` --- ## 📝 Detailed Endpoint Documentation ### 1. Get All Subscription Lines **Action:** `get_lines` **Description:** Retrieves all subscription lines (M3U/Xtream Codes accounts) in your panel. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_lines" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "123", "username": "testuser", "password": "testpass123", "exp_date": "1735689600", "max_connections": "1", "is_trial": "0", "enabled": "1", "is_restreamer": "0", "bouquet": "[1,2,3]", "notes": "Premium customer", "created_at": "1609459200" } ] } ``` **Use Cases:** - Monitor active subscriptions - Check expiration dates - Export customer list - View connection limits - Audit trial accounts --- ### 2. Get All Users **Action:** `get_users` **Description:** Retrieves all user accounts (admins, resellers, users) in your panel. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_users" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "1", "username": "admin", "member_group_id": "1", "email": "admin@example.com", "date_registered": "1609459200", "status": "1" } ] } ``` **Use Cases:** - List all panel users - Audit user permissions - View reseller accounts - Export user data --- ### 3. Get All Live Streams **Action:** `get_streams` **Description:** Retrieves all live TV streams configured in your panel. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_streams" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "456", "stream_display_name": "CNN HD", "stream_source": "http://source.example.com/stream.m3u8", "category_id": "1", "stream_icon": "http://example.com/icon.png", "enabled": "1" } ] } ``` **Use Cases:** - List all streams - Check stream status - Monitor stream sources - Export stream configurations - View stream categories --- ### 4. Get All Channels **Action:** `get_channels` **Description:** Retrieves all channel configurations. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_channels" ``` **Use Cases:** - List channel catalog - View EPG mappings - Export channel list - Check channel categories --- ### 5. Get All Movies **Action:** `get_movies` **Description:** Retrieves all VOD movies in your panel. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_movies" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "789", "name": "The Matrix", "stream_type": "movie", "added": "1609459200", "category_id": "5", "cover": "http://example.com/poster.jpg", "plot": "A computer hacker learns..." } ] } ``` **Use Cases:** - List movie catalog - View movie metadata - Monitor storage usage - Export movie list - Check categories --- ### 6. Get All Series **Action:** `get_series_list` **Description:** Retrieves all TV series in your panel. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_series_list" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "101", "name": "Breaking Bad", "category_id": "3", "cover": "http://example.com/cover.jpg", "plot": "A high school chemistry teacher...", "num_seasons": "5" } ] } ``` **Use Cases:** - List series catalog - View series metadata - Check episode counts - Export series list --- ### 7. Get All Episodes **Action:** `get_episodes` **Description:** Retrieves all episodes. Can be filtered by series. **Request (All Episodes):** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_episodes" ``` **Request (Specific Series):** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_episodes&series_id=101" ``` **Parameters:** - `series_id` (optional) - Filter by series ID **Use Cases:** - List all episodes - View episode metadata - Filter by series - Check availability --- ### 8. Get All MAG Devices **Action:** `get_mags` **Description:** Retrieves all MAG set-top box subscriptions. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_mags" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "202", "mac": "00:1A:79:XX:XX:XX", "exp_date": "1735689600", "enabled": "1", "bouquet": "[1,2,3]" } ] } ``` **Use Cases:** - List MAG devices - View MAC addresses - Check expiration dates - Monitor device status --- ### 9. Get All Enigma2 Devices **Action:** `get_enigmas` **Description:** Retrieves all Enigma2 STB subscriptions. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_enigmas" ``` **Use Cases:** - List Enigma2 devices - View device status - Check expiration dates - Monitor connections --- ### 10. Get All Radio Stations **Action:** `get_stations` **Description:** Retrieves all radio streaming channels. **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_stations" ``` **Use Cases:** - List radio stations - View station metadata - Check stream sources - Export station list --- ### 11. Get All Packages **Action:** `get_packages` **Description:** Retrieves all subscription packages (bouquets). **Request:** ```bash curl "http://your-server.com/cSbuFLhp/?api_key=8D3135D30437F86EAE2FA4A2A8345000&action=get_packages" ``` **Response Example:** ```json { "status": "STATUS_SUCCESS", "data": [ { "id": "1", "package_name": "Premium Package", "streams": "[1,2,3,4,5]", "bouquet_channels": "100" } ] } ``` **Use Cases:** - List all packages - View package configurations - Check channel assignments - Export package data --- ## 💻 Code Examples ### Python ```python import requests # Configuration BASE_URL = "http://your-server.com/cSbuFLhp/" API_KEY = "8D3135D30437F86EAE2FA4A2A8345000" def get_lines(): """Get all subscription lines""" response = requests.get( BASE_URL, params={ "api_key": API_KEY, "action": "get_lines" } ) data = response.json() if data["status"] == "STATUS_SUCCESS": return data["data"] else: raise Exception(f"API Error: {data.get('error', 'Unknown error')}") # Usage try: lines = get_lines() print(f"Found {len(lines)} subscription lines") for line in lines: print(f"- {line['username']} (ID: {line['id']})") except Exception as e: print(f"Error: {e}") ``` ### PHP ```php getMessage() . "\n"; } ?> ``` ### JavaScript (Node.js) ```javascript const fetch = require('node-fetch'); // Configuration const BASE_URL = 'http://your-server.com/cSbuFLhp/'; const API_KEY = '8D3135D30437F86EAE2FA4A2A8345000'; async function getLines() { const url = `${BASE_URL}?api_key=${API_KEY}&action=get_lines`; const response = await fetch(url); const data = await response.json(); if (data.status === 'STATUS_SUCCESS') { return data.data; } else { throw new Error(`API Error: ${data.error || 'Unknown error'}`); } } // Usage (async () => { try { const lines = await getLines(); console.log(`Found ${lines.length} subscription lines`); lines.forEach(line => { console.log(`- ${line.username} (ID: ${line.id})`); }); } catch (error) { console.error('Error:', error.message); } })(); ``` ### JavaScript (Browser/React) ```javascript // React Hook Example import { useState, useEffect } from 'react'; const API_CONFIG = { baseUrl: 'http://your-server.com/cSbuFLhp/', apiKey: '8D3135D30437F86EAE2FA4A2A8345000' }; function useLines() { const [lines, setLines] = useState([]); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { async function fetchLines() { try { const url = `${API_CONFIG.baseUrl}?api_key=${API_CONFIG.apiKey}&action=get_lines`; const response = await fetch(url); const data = await response.json(); if (data.status === 'STATUS_SUCCESS') { setLines(data.data); } else { setError(data.error || 'Unknown error'); } } catch (err) { setError(err.message); } finally { setLoading(false); } } fetchLines(); }, []); return { lines, loading, error }; } // Component usage function LinesList() { const { lines, loading, error } = useLines(); if (loading) return