LLM сокращение URL
Base64 кодирование для предсказуемого сокращения URL, совместимого с AI-системами
Обзор
ZAGL предоставляет LLM-совместимое сокращение URL с использованием Base64 кодирования для предсказуемых, воспроизводимых коротких URL. Идеально для AI-приложений, которым нужна согласованная генерация URL без API-ключей или сложной аутентификации.
LLM совместимость
Разработано для AI-систем
Предсказуемость
Один URL всегда генерирует один короткий код
Без API-ключей
Простые HTTP-запросы
Справочник API
Закодировать URL
POST /api/llm/encodeТело запроса
{ "url": "https://example.com/long/url/path" }
Ответ
{ "success": true, "data": { "shortUrl": "https://za.gl/e/aHR0cHM6Ly9...", "encoded": "aHR0cHM6Ly9leGFtcGxl...", "originalUrl": "https://example.com/...", "method": "base64", "expires": null, "createdAt": "2024-01-01T00:00:00Z" } }
Доступ к короткому URL
GET /e/{base64}Посещение короткого URL автоматически перенаправит на оригинальный URL. Base64 закодированная строка содержит оригинальный URL и может быть предсказуемо декодирована.
Аналитика
GET /api/llm/analytics?days=30&format=jsonПолучите аналитику для LLM-сгенерированных URL. Поддерживает форматы JSON и CSV.
Параметры запроса
days: Количество дней (1-365, по умолчанию: 30)format: Формат ответа (json или csv, по умолчанию: json)
Лимиты и спецификации
Лимиты запросов
- • Кодирование:: 60 requests/minute
- • Редиректы:: 60 requests/minute
- • Аналитика:: 120 requests/minute
Ограничения
- • Макс. длина URL: 4KB
- • Протоколы: Только HTTP, HTTPS
- • Приватные IP: Заблокированы для безопасности
- • Истекает: Никогда (постоянные URL)
Примеры кода
Python
llm_shortener.py
import base64 import urllib.parse import requests def shorten_url_llm(url): """ Create a predictable shortened URL using Base64 encoding Compatible with ZAGL LLM functionality """ # Validate URL if len(url) > 4096: raise ValueError("URL exceeds 4KB limit") # Encode to Base64 encoded_bytes = base64.b64encode(url.encode('utf-8')) encoded_str = encoded_bytes.decode('utf-8') # Remove padding for cleaner URLs clean_encoded = encoded_str.rstrip('=') # Generate short URL short_url = f"https://yourdomain.com/e/{clean_encoded}" return { "short_url": short_url, "encoded": clean_encoded, "original_url": url } def decode_llm_url(encoded_url): """ Decode a Base64 encoded URL """ # Add padding back if needed padding_needed = 4 - (len(encoded_url) % 4) if padding_needed != 4: encoded_url += '=' * padding_needed # Decode decoded_bytes = base64.b64decode(encoded_url) return decoded_bytes.decode('utf-8') # Example usage original_url = "https://example.com/very/long/url/path" result = shorten_url_llm(original_url) print(f"Short URL: {result['short_url']}") print(f"Encoded: {result['encoded']}")
JavaScript/Node.js
llm_shortener.js
// JavaScript/Node.js implementation function shortenUrlLLM(url) { // Validate URL if (url.length > 4096) { throw new Error("URL exceeds 4KB limit"); } // Validate URL format try { new URL(url); } catch { throw new Error("Invalid URL format"); } // Encode to Base64 const base64 = Buffer.from(url, 'utf-8').toString('base64'); // Remove padding for cleaner URLs const cleanBase64 = base64.replace(/=/g, ''); // Generate short URL const shortUrl = `https://yourdomain.com/e/${cleanBase64}`; return { shortUrl, encoded: cleanBase64, originalUrl: url }; } function decodeLLMUrl(encodedUrl) { // Add padding back if needed let paddedBase64 = encodedUrl; while (paddedBase64.length % 4) { paddedBase64 += '='; } // Decode from Base64 return Buffer.from(paddedBase64, 'base64').toString('utf-8'); } // Example usage const originalUrl = "https://example.com/very/long/url/path"; const result = shortenUrlLLM(originalUrl); console.log(`Short URL: ${result.shortUrl}`); console.log(`Encoded: ${result.encoded}`);
Терминал / cURL
terminal
# Encode a URL curl -X POST https://za.gl/api/llm/encode \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com/very/long/url/path"}' # Get analytics curl "https://za.gl/api/llm/analytics?days=7&format=json" # Get analytics as CSV curl "https://za.gl/api/llm/analytics?days=30&format=csv" \ -o analytics.csv
Сценарии использования
LLM приложения
- • Плагины и интеграции ChatGPT
- • Claude Code и AI инструменты разработки
- • Автоматическая генерация контента
- • AI-powered обмен ссылками
Автоматизация и скрипты
- • CI/CD пайплайны
- • Интеграции вебхуков
- • Пакетная обработка URL
- • Генераторы документации
Совместимо с za.gl/llm-docs спецификацией
Последнее обновление: 1/13/2026