Skip to content

List the domain's short links (newest first)

GET
/api/v1/domains/{domain_id}/short_links
curl --request GET \
--url https://app.routeseam.com/api/v1/domains/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/short_links \
--header 'X-Api-Key: <X-Api-Key>'

Returns every short link on the domain in one array, newest first. There is no pagination today — no limit, cursor or page parameter — so a client must be ready for the whole set in a single response.

domain_id
required
string format: uuid

OK

Media typeapplication/json
object
short_links
required
Array<object>

Exactly the keys Api::V1::ShortLinkSerializer emits. preserve_path and kind are deliberately absent: the edge ignores preserve_path for short links, and kind is an internal discriminator.

object
id
required
string format: uuid
domain_id
required
string format: uuid
path
required

Canonical stored form, always with a leading slash. Matched exactly and case-sensitively at the edge.

string
url
required

Https:// + the domain’s hostname + path.

string format: uri
destination_url
required
string format: uri
status_code
required
integer
Allowed values: 301 302 307 308
preserve_query
required
boolean
enabled
required
boolean
expires_at
required
string | null format: date-time
created_at
required
string format: date-time
Example
{
"short_links": [
{
"path": "/docs",
"url": "https://go.example.com/docs",
"status_code": 301
}
]
}

Missing or invalid API key

Media typeapplication/json

The ONLY error envelope — produced by Api::V1::BaseController#render_error_response

object
error
required
string
errors
Array<string>
validation_errors
object
key
additional properties
Array<string>
Example
{
"error": "Invalid API key",
"errors": [],
"validation_errors": {}
}

API access has not been enabled; org suspended; or owner email unverified

Media typeapplication/json

The ONLY error envelope — produced by Api::V1::BaseController#render_error_response

object
error
required
string
errors
Array<string>
validation_errors
object
key
additional properties
Array<string>
Examplegenerated
{
"error": "example",
"errors": [
"example"
],
"validation_errors": {
"additionalProperty": [
"example"
]
}
}

Not found (cross-tenant ids are indistinguishable from missing ones)

Media typeapplication/json

The ONLY error envelope — produced by Api::V1::BaseController#render_error_response

object
error
required
string
errors
Array<string>
validation_errors
object
key
additional properties
Array<string>
Example
{
"error": "Not found",
"errors": [],
"validation_errors": {}
}

Over 300 requests/minute for this key

Media typeapplication/json

The ONLY error envelope — produced by Api::V1::BaseController#render_error_response

object
error
required
string
errors
Array<string>
validation_errors
object
key
additional properties
Array<string>
Example
{
"error": "Rate limit exceeded",
"errors": [],
"validation_errors": {}
}