Biblioteca PHP 8.2+

PHP SDK para Lix.li

SDK oficial de PHP para a API de encurtamento de URL do Lix.li. Crie links curtos, gerencie grupos e rastreie cliques com um cliente limpo, tipado e imutável.

# Install via Composer
$ composer require lix-url/php-sdk

// Quick start
use Lix\Client;

$client = new Client('lix_live_xxx');
$link = $client->links()->create('https://example.com');
echo $link->link->shortUrl;
// https://lix.li/a3b7k2
Recursos

Tudo que você precisa para integrações com API de encurtamento de URL em PHP

Construído para aplicações modernas em PHP com DTOs tipados, exceções previsíveis, clientes HTTP compatíveis com PSR e suporte IDE de primeira classe.

Gerenciamento de links

Crie, atualize, exclua e organize links curtos com DTOs tipados e respostas de API previsíveis.

Gerenciamento de grupos

Organize links em grupos. Crie grupos rotativos para testes A/B de páginas de destino.

Conta e API de uso

Acesse informações de conta, limites de API, estatísticas de uso e detalhes de plano diretamente da sua aplicação.

DTOs imutáveis

Todas as respostas são classes PHP somente leitura com propriedades tipadas. Sem arrays mágicos — autocompletar IDE pronto para usar.

Exceções tipadas

6 tipos de exceções dedicados para validação, autorização, limites de taxa, erros de servidor e falhas de transporte.

Cliente HTTP personalizado

Substitua o Guzzle por qualquer cliente HTTP compatível com PSR-18. Flexibilidade total para testes e ambientes personalizados.

Início rápido

Comece em 30 segundos

Instale via Composer e comece a criar links curtos em minutos. Construído para PHP 8.2+ com DTOs tipados, respostas imutáveis, clientes HTTP compatíveis com PSR e fluxos de trabalho modernos.

PHP 8.2+ MIT License PSR-18
1
Instale com Composer

Adicione o SDK ao seu projeto com um único comando.

 composer require lix-url/php-sdk
2
Crie um cliente

Passe sua chave de API. Opcionalmente injete um cliente HTTP PSR-18 personalizado.

use Lix\Client;
$client = new Client('lix_live_xxx');
3
Crie seu primeiro link

Encurte uma URL e receba um LinkShortenResult tipado com a URL curta e informações de uso.

$result = $client->links()->create('https://example.com');
echo $result->link->shortUrl;
// https://lix.li/a3b7k2
// Links used: 42 / 100
echo $result->usage->used . ' / ' . $result->usage->limit;
API de grupos

Organize links com grupos e rotação

Organize links por campanha, produto, equipe ou projeto. Grupos rotativos distribuem o tráfego entre vários destinos e simplificam os fluxos de trabalho de testes A/B.

  • create() Crie um grupo com nome, descrição opcional e modo de rotação.
  • get() Recupere um grupo por ID com todos os seus metadados.
  • update() Renomeie, atualize descrição ou altere o modo de rotação.
  • delete() Exclua um grupo mantendo os dados de links intactos.
  • list() Navegue por grupos com paginação e respostas de coleção tipadas.
// Create a regular group
$group = $client->groups()->create(
    name: 'Marketing'
);
echo $group->name;

// Create a rotating group for A/B testing
$group = $client->groups()->create(
    name: 'Landing Pages',
    isRotate: true
);

// Update group
$group = $client->groups()->update(
    groupId: 10,
    description: 'Updated description'
);

// List with pagination
$response = $client->groups()->list(
    limit: 10,
    fromId: 1000
);
foreach ($response->groups as $group) {
    echo $group->name . PHP_EOL;
}
API de conta e uso

Acesse dados de conta, plano e uso

Acesse informações de conta, detalhes de assinatura e limites de uso através de uma única resposta tipada. DTOs aninhados somente leitura fornecem autocompletar IDE completo e estruturas de dados previsíveis.

$profile = $client->profile()->me();

// Account info
echo $profile->client->name;
echo $profile->user->email;

// Plan details
echo $profile->plan->name;
echo $profile->plan->endDatetime;

// Usage limits
echo $profile->usages->links->remaining;
echo $profile->usages->apiLinks->used;
echo $profile->usages->massLinks->limit;

Cliente

Metadados de organização e conta.

Usuário

Informações do usuário autenticado e detalhes de conta.

Plano

Assinatura atual e período de faturamento.

Uso

Limites de API, cotas de links e uso restante.

Exceções tipadas

6 exceções tipadas para controle preciso

Trate erros de API com classes de exceção dedicadas em vez de respostas genéricas. Cada erro HTTP é mapeado para um tipo de exceção específico, enquanto ValidationException expõe detalhes de validação a nível de campo.

use Lix\Exceptions\ValidationException;
use Lix\Exceptions\UnauthorizedException;
use Lix\Exceptions\NotFoundException;
use Lix\Exceptions\RateLimitException;
use Lix\Exceptions\ServerException;

try {
    $client->links()->create(
        url: 'invalid-url'
    );
} catch (ValidationException $e) {
    // Field-level validation errors
    // $e->data;
} catch (UnauthorizedException $e) {
    // Invalid or expired API key
} catch (NotFoundException $e) {
    // Link or group does not exist
} catch (RateLimitException $e) {
    // Too many requests — retry after
} catch (ServerException $e) {
    // 5xx server error
}
ValidationException

400 — Entrada inválida. Acesse $e->data para erros de campo.

UnauthorizedException

401 — Credenciais de API ausentes, inválidas ou expiradas.

NotFoundException

404 — Link, grupo ou recurso não encontrado.

RateLimitException

429 — Limite de taxa excedido.

ServerException

500 — Erro de servidor inesperado.

HttpClientException

Falha de rede / transporte.

Todas as exceções do SDK estendem LixException. Capture a classe base para tratamento global ou aponte para tipos específicos quando necessário.

Ecossistema

Explore SDKs para outras plataformas

Use a mesma API do Lix.li do PHP, JavaScript, Python ou Go com SDKs adaptados a cada ecossistema.

Python SDK
Cliente Python tipado para links curtos, grupos, análise e automação. Construído para aplicações Python modernas e fluxos de trabalho.
Go SDK
SDK nativo de Go com estruturas tipadas, suporte de contexto e tratamento de erros idiomático para integrações com API de encurtamento de URL.
PHP SDK
SDK moderno de PHP com DTOs tipados, modelos somente leitura, exceções dedicadas e instalação via Composer.
JS SDK
SDK de JavaScript baseado em Promises para ambientes Node.js e navegador. Crie e gerencie links curtos com uma experiência de desenvolvimento limpa.

Ready to shorten links in PHP?

Install the SDK, get your API key, and start creating short links in under a minute.