API de Encurtamento de Links do Linkly
Crie, atualize e gerencie links de forma programática usando a API de Encurtamento de Links do Linkly.
Relacionado: Analytics API | Webhooks
Antes de começar
O Linkly gera solicitações de API na interface para você copiar e colar em suas aplicações.
Isso funciona para criação de links e atualização de links.
Economize tempo e deixe que fazemos o trabalho difícil:
- 1Veja abaixo solicitações de API para criação de links.
- 2Copie as solicitações na íntegra. Você pode verificar se funcionam para você.
- 3Peça ao ChatGPT ou equivalente para adaptar essas solicitações em código-fonte para sua aplicação. Não há necessidade de gastar tempo fazendo uma integração complexa. Nossa API é totalmente consumível por máquina.
Especificação OpenAPI 3.0
Você pode gerar solicitações de API diretamente da interface do usuário do Linkly.
Construtor de API de Encurtamento de Links do Linkly
A API de encurtamento de links do Linkly constrói solicitações de API automaticamente com base no conteúdo do formulário. Você pode colar o texto fornecido aqui em qualquer LLM para gerar automaticamente código para sua aplicação.
A API do Linkly é documentada usando o padrão OpenAPI, que vai além do que é fornecido abaixo. Os mesmos endpoints também estão disponíveis como uma coleção Postman de um clique.
Visualizar Especificação OpenAPI
Autorização
Você precisará de:
- Sua Chave de API
- ID do Workspace
Você pode obter esses detalhes dentro do Linkly.
- 1Faça login no Linkly.
- 2Clique em Configurações.
- 3Clique em Chaves de API.
Criando ou atualizando um link
Para criar um link, tudo que você precisa fazer é enviar uma solicitação POST para:
https://app.linklyhq.com/api/v1/link
com os seguintes campos no corpo.
O tipo de codificação é x-www-form-urlencoded ou application/json.
Se você está enviando o campo Rules, você deve usar application/json.
Recomendamos que você use JSON com a especificação Open API.
| Label | Key | Type | Notes |
|---|---|---|---|
| Chave de API da Conta | api_key | String | Obrigatório |
| ID do Workspace | workspace_id | Integer | Obrigatório |
| ID do Link | id | Integer | Obrigatório se atualizando link existente |
| Destino | url | String | Obrigatório |
| Apelido | name | String | |
| Notas | note | String | |
| Tags de retargeting (região head) | head_tags | String | Para pixels de retargeting |
| Tags de retargeting (região body) | body_tags | String | Para pixels de retargeting |
| Encaminhar Parâmetros | forward_params | Boolean | |
| Ocultar Referenciador | hide_referrer | Boolean | Envia referrer-policy: no-referrer para que o destino não veja o Linkly no cabeçalho de referência |
| Mascaramento | cloaking | Boolean | Mascara a URL de destino atrás de um frame |
| Bloquear Bots | block_bots | Boolean | Bloqueia bots/crawlers conhecidos |
| Pular Rastreamento de Crawler Social | skip_social_crawler_tracking | Boolean | Quando block_bots está ativado, ainda deixar crawlers sociais passar para que visualizações de OG funcionem |
| Análise Pública | public_analytics | Boolean | Habilita a página /abc123.stats pública para este link |
| Senha | password | String | Os visitantes devem inserir esta senha antes do redirecionamento |
| Status de Publicação | enabled | Boolean | |
| Fonte UTM | utm_source | String | Para rastreamento UTM |
| Meio UTM | utm_medium | String | Para rastreamento UTM |
| Campanha UTM | utm_campaign | String | Para rastreamento UTM |
| Termo UTM | utm_term | String | Para rastreamento UTM |
| Conteúdo UTM | utm_content | String | Para rastreamento UTM |
| Domínio Personalizado | domain | String | Obrigatório se slug for fornecido. Veja domínios personalizados |
| Sufixo de Domínio Personalizado | slug | String | Se o domínio for fornecido e slug for nulo, será gerado automaticamente |
| Título do Open Graph | og_title | String | Para visualizações de mídia social |
| Descrição do Open Graph | og_description | String | Para visualizações de mídia social |
| URL de Imagem do Open Graph | og_image | String | Para visualizações de mídia social |
| ID de Pixel Meta | fb_pixel_id | String | Para Pixel Meta |
| ID de Pixel TikTok | tiktok_pixel_id | String | |
| ID do Google Analytics 4 | ga4_tag_id | String | |
| Container do Google Tag Manager | gtm_id | String | |
| Linkificar Palavras | linkify_words | String | Frases separadas por quebras de linha que devem ser encurtadas automaticamente em páginas de destino |
| Substituições | replacements | String | Regras de substituição de texto aplicadas à página de destino |
| Data/Hora de Expiração | expiry_datetime | String DateTime ISO8601 | Para links com expiração |
| Destino de Expiração | expiry_destination | String (URL) | Para links com expiração. Deve começar com http. |
| Cliques de Expiração | expiry_clicks | Integer | Expirar o link após este número de cliques |
| Webhooks | webhooks | Array de strings | URLs de webhook por link. Veja webhooks. |
| Notificar IDs de Usuários | notify_user_ids | Array de inteiros | IDs de usuários do workspace para notificar em cada clique |
| Estilos de Código QR | qr_styles | Objeto JSON | Para estilização de código QR. Chaves: fgColor, bgColor, qrStyle, eyeStyle, eyeColorInner, eyeColorOuter, logoImage, logoWidth, logoHeight, logoPadding, logoStyle, quietZone |
| Regras | rules | Array JSON | Para rotadores, redirecionamentos geo, e redirecionamentos de dispositivo |
Exemplo de solicitação usando curl
O código abaixo ilustra como fazer uma solicitação de API para criar um link.
curl -X POST https://app.linklyhq.com/api/v1/link
-H 'cache-control: no-cache'
-d 'api_key=your_secret_key&workspace_id=1&url=http%3A%2F%2Fwww.wikijob.co.uk&name=Test%20Link'
Uma resposta bem-sucedida retornará um objeto JSON representando o link, junto com um id de link.
{
"id": 9512,
"url": "https://www.wikijob.co.uk",
"name": "Test Link",
"note": null,
"head_tags": null,
"body_tags": null,
"linkify_words": null,
"replacements": null,
"enabled": true,
"cloaking": false,
"forward_params": false,
"hide_referrer": false,
"block_bots": false,
"skip_social_crawler_tracking": false,
"public_analytics": false,
"password": null,
"domain": null,
"slug": null,
"utm_source": null,
"utm_medium": null,
"utm_campaign": null,
"utm_term": null,
"utm_content": null,
"og_title": null,
"og_description": null,
"og_image": null,
"fb_pixel_id": null,
"tiktok_pixel_id": null,
"ga4_tag_id": null,
"gtm_id": null,
"full_url": "https://l.linklyhq.com/l/2TQ",
"rules": [],
"expiry_datetime": null,
"expiry_destination": null,
"expiry_clicks": null,
"qr_styles": null,
"webhooks": [],
"notify_user_ids": [],
"workspace_id": 1448,
"deleted": false
}
Atualizando um link
Para atualizar um link, envie a mesma solicitação que você usaria para criar o link, mas inclua o campo id para o link que você quer atualizar, bem como as alterações.
Criando rotadores via API
Para criar um rotador, envie um campo chamado rules como um array JSON, junto com o payload do link acima. Você deve usar application/json para enviar arrays JSON.
Por exemplo:
[
{"what": "rotator", "url": "https://www.microsoft.com", "percentage": "50"},
{"what": "rotator", "url": "https://www.apple.com", "percentage": "50"}
]
Criando redirecionamentos geo via API
Para redirecionar por país, envie um campo chamado rules como um array JSON, junto com o payload do link acima. Você deve usar codificação application/json para enviar arrays JSON.
Por exemplo:
[
{"what": "country", "url": "https://www.microsoft.com", "matches": "UK"},
{"what": "country", "url": "https://www.apple.com", "matches": "US"}
]
O país é o código de país ISO 3166 alfa-2.
Criando redirecionamentos de dispositivo via API
Para redirecionar por dispositivo, envie um campo chamado rules como um array JSON, junto com o payload do link acima.
Por exemplo:
[
{"what": "platform", "url": "https://www.google.com", "matches": "windows"},
{"what": "platform", "url": "https://www.apple.com", "matches": "ios"}
]
Onde o campo matches é um de:
- ios
- android
- windows
- linux
- mac
Criando ou atualizando múltiplos links em uma solicitação
O Linkly suporta a criação/alteração de até 1000 links por solicitação.
Para fazer isso, envie sua chave de API como parte da solicitação da seguinte forma:
https://app.linklyhq.com/api/v1/links?api_key=XXXXXXXXXXX
Em seguida, use o mesmo schema acima para os casos de link individual, mas envolva as solicitações de link em um array, do formulário:
[{link}, {link}]
Aqui está uma solicitação completa que atualizará dois links:
wget --no-check-certificate \
--method POST \
--timeout=0 \
--header 'Content-Type: application/json' \
--body-data '[
{
"workspace_id": "WORKSPACE_ID",
"url": "https://nature.com",
"name": "Test",
"id": LINK_ID
},
{
"workspace_id": "WORKSPACE_ID",
"url": "https://science.com",
"id": LINK_ID
}
]' \
'https://app.linklyhq.com/api/v1/links?api_key=API_KEY'
Isso funciona para ambas as ações de criação e atualização.
Esteja ciente de que pode levar até 60 segundos para uma solicitação grande. Se as solicitações demorarem mais do que isso, elas falharão, e você deve considerar dividir sua carga de trabalho em pedaços menores.
Limites de Taxa
A API de encurtamento de links é limitada a 20 solicitações/segundo. Até 200 solicitações por segundo estão disponíveis sob solicitação. Você pode fazer upload de até 1000 links em uma única solicitação.
Relacionado
- Analytics API - Exportar dados de cliques e relatórios de tráfego
- Webhooks - Notificações de cliques em tempo real
- Integração Zapier - Integrações sem código
Disponibilidade do plano
Incluído em todos os planos
Rastreie 500 cliques mensais com todos os recursos incluídos.