Python SDK for the T.LY URL Shortener API.
Project description
tly-url-shortener-api
Python SDK for the T.LY URL Shortener API.
Features
- Typed Python client with sensible defaults.
- Built-in bearer auth handling.
- Binary or JSON responses for QR endpoints.
- CLI entry point (
tly) for quick scripts and terminal usage. - PyPI-ready packaging (
pyproject.toml) and tests.
Installation
pip install tly-url-shortener-api
For local development:
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
Quick Start
from tly_url_shortener import TlyClient
client = TlyClient(api_token="YOUR_TLY_API_TOKEN")
created = client.create_short_link(
long_url="https://example.com/landing-page",
description="Campaign link",
public_stats=True,
)
print(created["short_url"])
expanded = client.expand_short_link(short_url=created["short_url"])
print(expanded["long_url"])
Endpoint Coverage
OneLink Stats Management
get_onelink_statsdelete_onelink_stats
ShortLink Management
create_short_linkget_short_linkupdate_short_linkdelete_short_linkexpand_short_linklist_short_linksbulk_shorten_linksbulk_update_links
ShortLink Stats
get_link_stats
UTM Preset Management
create_utm_presetlist_utm_presetsget_utm_presetupdate_utm_presetdelete_utm_preset
OneLink Management
list_onelinks
Pixel Management
create_pixellist_pixelsget_pixelupdate_pixeldelete_pixel
QR Code Management
get_qr_codeupdate_qr_code
Tag Management
list_tagscreate_tagget_tagupdate_tagdelete_tag
CLI Usage
Set token once:
export TLY_API_TOKEN="YOUR_TLY_API_TOKEN"
Create short link:
tly shorten --long-url "https://example.com"
Expand short link:
tly expand --short-url "https://t.ly/abc123"
Call any client method:
tly call create_tag --data '{"tag":"fall2026"}'
Retrieve QR image:
tly qr --short-url "https://t.ly/abc123" --out qr.png
Development
pytest
ruff check .
python -m build
twine check dist/*
Publish to PyPI
python -m build
twine check dist/*
twine upload dist/*
If you use trusted publishing in GitHub Actions, replace the final twine upload with your CI release workflow.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tly_url_shortener_api-0.1.0.tar.gz.
File metadata
- Download URL: tly_url_shortener_api-0.1.0.tar.gz
- Upload date:
- Size: 8.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dfa072d1dfb724f933208885601335bbd71a499829a1f421d7bcfb88828d4bcb
|
|
| MD5 |
504c85ffc3dd1de95269a40ad7cf25ee
|
|
| BLAKE2b-256 |
7772978e7baf53e563a62ec1a7d6161be5449a927c171c9b08ddaa0ac78302b5
|
File details
Details for the file tly_url_shortener_api-0.1.0-py3-none-any.whl.
File metadata
- Download URL: tly_url_shortener_api-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27e39755afc7447dcf471f6960472614cb4f2a9e4a21ca0733899e276a1f3fa6
|
|
| MD5 |
6be9961a8c3e9fdc5c701e3095f6212f
|
|
| BLAKE2b-256 |
2c6fc3683ba5bdd25ccc4c68a87ab0c5f21ffb1ebe4ffc0997de0ee15f49dde0
|