mirror of
https://github.com/shlinkio/shlink.git
synced 2024-12-03 17:22:32 +03:00
141 lines
5.3 KiB
JSON
141 lines
5.3 KiB
JSON
{
|
|
"get": {
|
|
"operationId": "shortenUrl",
|
|
"tags": [
|
|
"Short URLs"
|
|
],
|
|
"summary": "Create a short URL",
|
|
"description": "Creates a short URL in a single API call. Useful for third party integrations.",
|
|
"parameters": [
|
|
{
|
|
"$ref": "../parameters/version.json"
|
|
},
|
|
{
|
|
"name": "apiKey",
|
|
"in": "query",
|
|
"description": "The API key used to authenticate the request",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "longUrl",
|
|
"in": "query",
|
|
"description": "The URL to be shortened",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "format",
|
|
"in": "query",
|
|
"description": "The format in which you want the response to be returned. You can also use the \"Accept\" header instead of this",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "string",
|
|
"enum": [
|
|
"txt",
|
|
"json"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "The list of short URLs",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "../definitions/ShortUrl.json"
|
|
},
|
|
"example": {
|
|
"longUrl": "https://github.com/shlinkio/shlink",
|
|
"shortUrl": "https://doma.in/abc123",
|
|
"shortCode": "abc123",
|
|
"dateCreated": "2016-08-21T20:34:16+02:00",
|
|
"visitsCount": 0,
|
|
"tags": [
|
|
"games",
|
|
"tech"
|
|
],
|
|
"meta": {
|
|
"validSince": "2017-01-21T00:00:00+02:00",
|
|
"validUntil": null,
|
|
"maxVisits": 100
|
|
},
|
|
"domain": null,
|
|
"title": null,
|
|
"crawlable": false
|
|
}
|
|
},
|
|
"text/plain": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"example": "https://doma.in/abc123"
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "The long URL was not provided or is invalid.",
|
|
"content": {
|
|
"application/problem+json": {
|
|
"schema": {
|
|
"$ref": "../definitions/Error.json"
|
|
},
|
|
"examples": {
|
|
"API v3 and newer": {
|
|
"value": {
|
|
"title": "Invalid URL",
|
|
"type": "https://shlink.io/api/error/invalid-url",
|
|
"detail": "Provided URL foo is invalid. Try with a different one.",
|
|
"status": 400,
|
|
"url": "https://invalid-url.com"
|
|
}
|
|
},
|
|
"Previous to API v3": {
|
|
"value": {
|
|
"title": "Invalid URL",
|
|
"type": "INVALID_URL",
|
|
"detail": "Provided URL foo is invalid. Try with a different one.",
|
|
"status": 400,
|
|
"url": "https://invalid-url.com"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"text/plain": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"examples": {
|
|
"API v3 and newer": {
|
|
"value": "https://shlink.io/api/error/invalid-url"
|
|
},
|
|
"Previous to API v3": {
|
|
"value": "INVALID_URL"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "Unexpected error.",
|
|
"content": {
|
|
"application/problem+json": {
|
|
"schema": {
|
|
"$ref": "../definitions/Error.json"
|
|
}
|
|
},
|
|
"text/plain": {
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|