API Reference
Authenticate with an Enterprise API key and list links authored by the key owner with the documented v1 REST endpoint.
Availability and base URL
The public REST API is available on Enterprise. Its base URL is:
https://www.linkyhost.com/api/v1
The only currently documented public endpoint is:
GET /api/v1/links
It lists links authored by the API-key owner across their personal and team workspaces. It does not provide a team selector and cannot list links authored by other team members. Upload, create, update, and delete endpoints are not part of the current public API.
Create an API key
- Open the dashboard with an Enterprise account.
- Select the API section.
- Enter a descriptive key name and select Generate.
- Copy the complete
lh_...value immediately.
The complete key is shown only once. Up to five active keys can be created. Existing keys can be named, reviewed by prefix and last-used date, and revoked from the dashboard.
Treat an API key like a password. Do not place it in browser code, a public repository, screenshots, URLs, or client-side logs.
Authentication
Send the key as a Bearer token:
Authorization: Bearer lh_your_key_here
Example:
curl --request GET \
--header "Authorization: Bearer lh_your_key_here" \
"https://www.linkyhost.com/api/v1/links?limit=100&offset=0"
Query parameters
| Parameter | Default | Range | Meaning |
|---|---|---|---|
limit | 100 | Up to 500 | Maximum number of links returned |
offset | 0 | 0 or greater | Number of newest links to skip |
Results are sorted newest first. Use the response's total, limit, and offset values to paginate.
Successful response
{
"links": [
{
"id": "66b1f8d209ba923456789abc",
"url": "https://quarterly-report.linkyhost.com",
"subdomain": "quarterly-report",
"shortCode": "quarterly-report",
"views": 12,
"uniqueVisitors": 8,
"type": "pdf",
"fileName": "quarterly-report.pdf",
"folderId": null,
"associatedDomain": null,
"createdAt": "2026-08-01T12:00:00.000Z"
}
],
"total": 1,
"limit": 100,
"offset": 0
}
| Field | Meaning |
|---|---|
id | Link identifier |
url | Stored Linkyhost URL |
subdomain | Linkyhost address label |
shortCode | Path segment used for a connected custom domain |
views | Recorded total views |
uniqueVisitors | Approximate unique count from stored visitor identifiers |
type | Link content category |
fileName | Original or current file name, when available |
folderId | Folder identifier or null |
associatedDomain | Connected domain identifier or null |
createdAt | ISO 8601 creation timestamp |
Rate limits
Requests are limited to:
- 60 requests per minute from one IP address; and
- 30 requests per minute for one API-key owner.
Reduce request frequency and retry later after a 429 response. Applications should use bounded retries with backoff rather than retrying continuously.
Status codes
| Status | Meaning | Action |
|---|---|---|
200 | Request succeeded | Process the JSON response |
401 | Key is missing, malformed, unknown, or revoked | Check the Bearer header or generate a new key |
403 | The account is suspended or no longer Enterprise | Restore eligibility or contact support |
429 | A request limit was reached | Wait and retry with backoff |
500 | Unexpected server error | Retry later; contact support if persistent |
Key rotation
Generate a new named key, update the server-side secret used by your integration, verify one successful request, and then revoke the old key. Revocation takes effect for applications using that key.
If a key is exposed, revoke it immediately. Never send the full key to support; provide only its dashboard name and visible prefix.