2016-10-22 16:44:14 -05:00
|
|
|
{
|
2023-07-01 09:56:07 -05:00
|
|
|
"openapi": "3.1.0",
|
2016-10-22 16:44:14 -05:00
|
|
|
"info": {
|
|
|
|
"title": "Shlink",
|
|
|
|
"description": "Shlink, the self-hosted URL shortener",
|
2022-08-13 10:48:55 -05:00
|
|
|
"version": "3.0"
|
2016-10-22 16:44:14 -05:00
|
|
|
},
|
2018-02-03 02:53:40 -06:00
|
|
|
|
2018-12-09 08:18:10 -06:00
|
|
|
"externalDocs": {
|
2020-03-10 15:45:20 -05:00
|
|
|
"url": "https://shlink.io/documentation/api-docs",
|
2018-12-09 08:18:10 -06:00
|
|
|
"description": "Find more info on how to start using this API here"
|
|
|
|
},
|
|
|
|
|
2018-02-03 02:53:40 -06:00
|
|
|
"servers": [
|
|
|
|
{
|
2018-12-09 08:18:10 -06:00
|
|
|
"url": "{scheme}://{host}",
|
2018-02-03 02:53:40 -06:00
|
|
|
"variables": {
|
2018-12-09 08:18:10 -06:00
|
|
|
"scheme": {
|
2018-02-03 02:53:40 -06:00
|
|
|
"default": "https",
|
2018-02-03 03:06:04 -06:00
|
|
|
"enum": ["https", "http"]
|
2018-02-03 02:53:40 -06:00
|
|
|
},
|
2018-12-09 08:18:10 -06:00
|
|
|
"host": {
|
2018-02-03 03:09:42 -06:00
|
|
|
"default": ""
|
2018-02-03 02:53:40 -06:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2016-10-22 17:02:13 -05:00
|
|
|
],
|
2016-10-22 16:44:14 -05:00
|
|
|
|
2018-02-03 02:53:40 -06:00
|
|
|
"components": {
|
|
|
|
"securitySchemes": {
|
2018-09-20 14:15:17 -05:00
|
|
|
"ApiKey": {
|
|
|
|
"description": "A valid shlink API key",
|
|
|
|
"type": "apiKey",
|
|
|
|
"in": "header",
|
2018-09-24 12:24:23 -05:00
|
|
|
"name": "X-Api-Key"
|
2018-02-03 02:53:40 -06:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
2018-09-20 13:52:27 -05:00
|
|
|
"tags": [
|
|
|
|
{
|
|
|
|
"name": "Short URLs",
|
|
|
|
"description": "Operations that can be performed on short URLs"
|
|
|
|
},
|
2024-02-27 14:00:53 -06:00
|
|
|
{
|
|
|
|
"name": "Redirect rules",
|
|
|
|
"description": "Handle dynamic rule-based redirects"
|
|
|
|
},
|
2018-09-20 13:52:27 -05:00
|
|
|
{
|
|
|
|
"name": "Tags",
|
|
|
|
"description": "Let you handle the list of available tags"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "Visits",
|
|
|
|
"description": "Operations to manage visits on short URLs"
|
2018-09-20 14:15:17 -05:00
|
|
|
},
|
2020-11-21 01:13:29 -06:00
|
|
|
{
|
|
|
|
"name": "Domains",
|
|
|
|
"description": "Operations to manage domains used on short URLs"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "Integrations",
|
|
|
|
"description": "Handle services with which shlink is integrated"
|
|
|
|
},
|
2018-12-29 07:39:31 -06:00
|
|
|
{
|
|
|
|
"name": "Monitoring",
|
|
|
|
"description": "Public endpoints designed to monitor the service"
|
|
|
|
},
|
2018-12-09 08:18:10 -06:00
|
|
|
{
|
|
|
|
"name": "URL Shortener",
|
|
|
|
"description": "Non-rest endpoints, used to be publicly exposed"
|
2018-09-20 13:52:27 -05:00
|
|
|
}
|
|
|
|
],
|
|
|
|
|
2016-10-22 16:44:14 -05:00
|
|
|
"paths": {
|
2019-11-29 12:09:03 -06:00
|
|
|
"/rest/v{version}/short-urls": {
|
2018-09-24 15:49:30 -05:00
|
|
|
"$ref": "paths/v1_short-urls.json"
|
2016-10-22 16:44:14 -05:00
|
|
|
},
|
2019-11-29 12:09:03 -06:00
|
|
|
"/rest/v{version}/short-urls/shorten": {
|
2018-09-24 15:49:30 -05:00
|
|
|
"$ref": "paths/v1_short-urls_shorten.json"
|
2018-05-06 05:19:08 -05:00
|
|
|
},
|
2019-11-29 12:09:03 -06:00
|
|
|
"/rest/v{version}/short-urls/{shortCode}": {
|
2018-09-24 15:49:30 -05:00
|
|
|
"$ref": "paths/v1_short-urls_{shortCode}.json"
|
2016-10-22 16:44:14 -05:00
|
|
|
},
|
2017-07-08 05:55:33 -05:00
|
|
|
|
2024-02-27 14:00:53 -06:00
|
|
|
"/rest/v{version}/short-urls/{shortCode}/redirect-rules": {
|
|
|
|
"$ref": "paths/v3_short-urls_{shortCode}_redirect-rules.json"
|
|
|
|
},
|
|
|
|
|
2019-11-29 12:09:03 -06:00
|
|
|
"/rest/v{version}/tags": {
|
2017-07-08 05:55:33 -05:00
|
|
|
"$ref": "paths/v1_tags.json"
|
|
|
|
},
|
2022-01-09 10:24:07 -06:00
|
|
|
"/rest/v{version}/tags/stats": {
|
|
|
|
"$ref": "paths/v2_tags_stats.json"
|
|
|
|
},
|
2017-07-08 05:55:33 -05:00
|
|
|
|
2020-05-01 04:44:55 -05:00
|
|
|
"/rest/v{version}/visits": {
|
|
|
|
"$ref": "paths/v2_visits.json"
|
|
|
|
},
|
2019-11-29 12:09:03 -06:00
|
|
|
"/rest/v{version}/short-urls/{shortCode}/visits": {
|
2018-09-24 15:49:30 -05:00
|
|
|
"$ref": "paths/v1_short-urls_{shortCode}_visits.json"
|
2018-09-20 14:15:17 -05:00
|
|
|
},
|
2020-05-09 02:53:45 -05:00
|
|
|
"/rest/v{version}/tags/{tag}/visits": {
|
|
|
|
"$ref": "paths/v2_tags_{tag}_visits.json"
|
|
|
|
},
|
2022-04-23 03:32:07 -05:00
|
|
|
"/rest/v{version}/domains/{domain}/visits": {
|
2022-04-23 02:27:52 -05:00
|
|
|
"$ref": "paths/v2_domains_{domain}_visits.json"
|
|
|
|
},
|
2021-02-09 15:03:03 -06:00
|
|
|
"/rest/v{version}/visits/orphan": {
|
|
|
|
"$ref": "paths/v2_visits_orphan.json"
|
|
|
|
},
|
2022-01-10 15:23:00 -06:00
|
|
|
"/rest/v{version}/visits/non-orphan": {
|
|
|
|
"$ref": "paths/v2_visits_non-orphan.json"
|
|
|
|
},
|
2018-09-20 14:15:17 -05:00
|
|
|
|
2020-09-27 02:53:12 -05:00
|
|
|
"/rest/v{version}/domains": {
|
|
|
|
"$ref": "paths/v2_domains.json"
|
|
|
|
},
|
2021-07-25 11:46:48 -05:00
|
|
|
"/rest/v{version}/domains/redirects": {
|
|
|
|
"$ref": "paths/v2_domains_redirects.json"
|
|
|
|
},
|
2020-09-27 02:53:12 -05:00
|
|
|
|
2020-04-12 06:59:10 -05:00
|
|
|
"/rest/v{version}/mercure-info": {
|
|
|
|
"$ref": "paths/v2_mercure-info.json"
|
|
|
|
},
|
|
|
|
|
2018-12-29 07:39:31 -06:00
|
|
|
"/rest/health": {
|
|
|
|
"$ref": "paths/health.json"
|
|
|
|
},
|
|
|
|
|
2018-12-09 08:18:10 -06:00
|
|
|
"/{shortCode}": {
|
|
|
|
"$ref": "paths/{shortCode}.json"
|
|
|
|
},
|
2018-12-09 08:43:56 -06:00
|
|
|
"/{shortCode}/track": {
|
|
|
|
"$ref": "paths/{shortCode}_track.json"
|
|
|
|
},
|
|
|
|
"/{shortCode}/qr-code": {
|
|
|
|
"$ref": "paths/{shortCode}_qr-code.json"
|
2016-10-22 16:44:14 -05:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|