openapi: 3.0.3
info:
title: 'Shortlink Service Docs'
description: 'Shortlink service allows you to create redirections based on conditions.'
version: 1.0.0
servers:
-
url: 'http://links.lim.bz'
paths:
/api/app:
get:
summary: 'Get application info.'
description: 'Get current authenticated application info.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
application/json:
schema:
type: object
example:
client: 'Example Application'
access_token: eyXXXXXXXX.XXXXXXX.XXXX
expires_at: '2031-02-07T12:47:58.000000Z'
scopes: ['*']
properties:
client: { type: string, example: 'Example Application' }
access_token: { type: string, example: eyXXXXXXXX.XXXXXXX.XXXX }
expires_at: { type: string, example: '2031-02-07T12:47:58.000000Z' }
scopes: { type: array, example: ['*'], items: { type: string } }
tags:
- Application
/api/app/settings:
put:
summary: 'Update application settings.'
description: "You can update your webhook listener url or email. Signals to your system will be sent via one of three ways: POST, GET or EMAIL.\nEvery event like shortlink has been entered or end user has been redirected may send signal to your system or application."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { application_id: 1, listener_uri: null, email: null }
properties:
data: { type: object, example: { application_id: 1, listener_uri: null, email: null } }
tags:
- Application
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
listener_uri:
type: string
description: 'The value must be a valid URL. This endpoint should be able to receive HTTP POST Request.'
example: 'https://yourdomain.com/listener.php'
email:
type: string
description: 'The value must be a valid email address. All registered EMAIL Signals will be send on this email.'
example: signals@yourdomain.com
'/api/shortlinks/{shortlink}/signals/{signal}/conditions':
post:
summary: 'Add condition to Signal.'
description: 'You can create new condition for Signal. Remember signal will be send if end user satisfies all conditions.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME }
properties:
data: { type: object, example: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME } }
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 4
required: true
schema:
type: integer
-
in: path
name: signal
description: 'Signal Id.'
example: 8
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/interstitials/{interstitial}/conditions':
post:
summary: 'Add condition to Interstitial.'
description: 'You can create new condition for Interstitial. Remember end user needs to satisfy all conditions to show interstitial.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME }
properties:
data: { type: object, example: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME } }
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 14
required: true
schema:
type: integer
-
in: path
name: interstitial
description: 'Interstitial Id.'
example: 15
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/destinations/{destination}/conditions':
post:
summary: 'Add condition to Destination.'
description: 'You can create new condition for Destination. Remember that end user will be redirected to destination if end user satisfies all conditions.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME }
properties:
data: { type: object, example: { id: 1, first_time: '2024-05-20T04:00:00.000000Z', second_time: '2024-05-20T15:59:00.000000Z', operator: BETWEEN, created_at: '2021-06-14T15:17:57.000000Z', updated_at: '2021-06-14T15:17:57.000000Z', type: TIME } }
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 7
required: true
schema:
type: integer
-
in: path
name: destination
description: 'Destination Id.'
example: 8
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/signals/{signal}/conditions/{condition}':
delete:
summary: 'Remove condition from Signal.'
description: 'You can remove existing condition from Signal. Remember end user needs to satisfy all conditions to send signal.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 15
required: true
schema:
type: integer
-
in: path
name: signal
description: 'Signal Id.'
example: 20
required: true
schema:
type: integer
-
in: path
name: condition
description: 'Condition Id which will be deleted.'
example: 12
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/interstitials/{interstitial}/conditions/{condition}':
delete:
summary: 'Remove condition from Interstitial.'
description: 'You can remove existing condition from Interstitial. Remember end user needs to satisfy all conditions to show interstitial.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 2
required: true
schema:
type: integer
-
in: path
name: interstitial
description: 'Interstitial Id.'
example: 7
required: true
schema:
type: integer
-
in: path
name: condition
description: 'Condition Id which will be deleted.'
example: 4
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/destinations/{destination}/conditions/{condition}':
delete:
summary: 'Remove condition from Destination.'
description: 'You can remove existing condition from Signal. Remember end user needs to satisfy all conditions to be redirected to destination.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Conditions
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 10
required: true
schema:
type: integer
-
in: path
name: destination
description: 'Destination Id.'
example: 1
required: true
schema:
type: integer
-
in: path
name: condition
description: 'Condition Id which will be deleted.'
example: 3
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/destinations':
get:
summary: 'Get shortlink all destinations.'
description: 'Get list of all destinations for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }, { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }]
properties:
data: { type: array, example: [{ id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }, { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }], items: { type: object } }
tags:
- Destinations
post:
summary: 'Create Destination for shortlink.'
description: 'You can create new Destination for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] } }
tags:
- Destinations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uri:
type: string
description: 'The value must be a valid URL.'
example: 'http://www.goodwin.biz/quod-aut-maxime-nam-et-nisi-fugiat'
is_default:
type: boolean
description: '(Required if conditions are not set).'
example: true
conditions:
type: array
description: '(Required if is_default is not set).'
example: [[], []]
items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: LATLONG }, operator: { type: string, description: 'The value must be one of BETWEEN, EQUAL, LESS THAN, GREATER THAN, or IN RANGE.', example: 'GREATER THAN' }, first_date: { type: string, description: '(Required if type is DATE). Date format: Y-m-d H:i:s', example: explicabo }, second_date: { type: string, description: '(Required if type is DATE and operator is BETWEEN). Date format: Y-m-d H:i:s', example: culpa }, first_time: { type: string, description: '(Required if type is TIME). Time format: h:i:s A', example: sed }, second_time: { type: string, description: '(Required if type is TIME and operator is BETWEEN). Time format: h:i:s A', example: nobis }, continent_code: { type: string, description: '(Required if type is CONTINENT and continent is not present). 2 characters long.', example: nam }, continent: { type: string, description: '(Required if type is CONTINENT and continent_code is not present).', example: quis }, country_code: { type: string, description: '(Required if type is COUNTRY and country is not present). 2 characters long.', example: labore }, country: { type: string, description: '(Required if type is COUNTRY and country_code is not present).', example: doloribus }, region_code: { type: string, description: '(Required if type is REGION and region is not present). 2 characters long.', example: et }, region: { type: string, description: '(Required if type is REGION and region_code is not present).', example: et }, latitude: { type: numeric, description: '(Required if type is LATLONG). Between: -90.0000000,90.0000000', example: ex }, longitude: { type: numeric, description: '(Required if type is LATLONG). Between: -180.0000000,180.0000000', example: vel }, range: { type: integer, description: '(Required if type is LATLONG). Between: 10, 10000. Value in miles.', example: 7 }, temperature: { type: integer, description: '(Required if type is TEMPERATURE). Between: -60, 60. Value in Celsius.', example: 9 }, weather: { type: string, description: '(Required if type is WEATHER). In: SUNNY, CLEAN, RAINY, FOGGY, SNOWY, CLOUDY, STORMY, HAIL', example: sint } }, required: [type, operator] }
required:
- uri
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 18
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/scenario/{scenario}/destination':
post:
summary: ''
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Destinations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uri:
type: string
description: 'The value must be a valid URL.'
example: 'http://schmidt.info/et-voluptatem-laborum-error-sit-quo-et'
type:
type: string
description: 'The value must be one of fulfilled or unfulfilled.'
example: fulfilled
required:
- uri
parameters:
-
in: path
name: shortlink
description: ''
example: dolore
required: true
schema:
type: string
-
in: path
name: scenario
description: ''
example: in
required: true
schema:
type: string
'/api/shortlinks/{shortlink}/destinations/{destination}':
put:
summary: 'Update Destination for shortlink.'
description: 'You can update existing destination.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] } }
tags:
- Destinations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uri:
type: string
description: ''
example: ut
is_default:
type: boolean
description: 'The value must be one of 1 or true.'
example: true
required:
- uri
delete:
summary: 'Delete Destination for shortlink.'
description: 'You can delete existing Destination. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Destinations
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 19
required: true
schema:
type: integer
-
in: path
name: destination
description: 'Destination which will be updated.'
example: 6
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/destinationgroup/{destinationgroup}/destination/{destination}':
delete:
summary: 'Update Destination for shortlink. Can''t remove the last destination in destination group. There should be always at least one destination.'
description: 'You can update existing destination.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] } }
tags:
- Destinations
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 5
required: true
schema:
type: integer
-
in: path
name: destinationgroup
description: ''
example: doloribus
required: true
schema:
type: string
-
in: path
name: destination
description: 'Destination which will be updated.'
example: 6
required: true
schema:
type: integer
'/wl/shortlinks/{shortlink}/destinations/{destination}':
put:
summary: 'Update Destination for shortlink.'
description: 'You can update existing destination.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 1, uri: 'https://ct.winlocal.io/bedford', is_default: 1, conditions: [] } }
tags:
- Destinations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
uri:
type: string
description: ''
example: perspiciatis
is_default:
type: boolean
description: 'The value must be one of 1 or true.'
example: true
required:
- uri
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 20
required: true
schema:
type: integer
-
in: path
name: destination
description: 'Destination which will be updated.'
example: 2
required: true
schema:
type: integer
/api/domains:
post:
summary: 'Create domain.'
description: "Create domain. You need to be owner of provided domain.\nPlease redirect domain records for"
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 94, domain: jakubowski.com, created_at: '2024-05-20T15:24:57.000000Z' }
properties:
data: { type: object, example: { id: 94, domain: jakubowski.com, created_at: '2024-05-20T15:24:57.000000Z' } }
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
domain:
type: string
description: ''
example: quia
is_default:
type: boolean
description: ''
example: false
required:
- domain
get:
summary: 'Get all domains'
description: 'Returns all domains assigned to application.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 95, domain: jacobs.com, created_at: '2024-05-20T15:24:57.000000Z' }, { id: 96, domain: hessel.info, created_at: '2024-05-20T15:24:57.000000Z' }]
properties:
data: { type: array, example: [{ id: 95, domain: jacobs.com, created_at: '2024-05-20T15:24:57.000000Z' }, { id: 96, domain: hessel.info, created_at: '2024-05-20T15:24:57.000000Z' }], items: { type: object } }
tags:
- Domains
'/api/domains/{domain}':
get:
summary: 'Get single domain'
description: 'Returns single domain info.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 97, domain: haag.com, created_at: '2024-05-20T15:24:57.000000Z' }
properties:
data: { type: object, example: { id: 97, domain: haag.com, created_at: '2024-05-20T15:24:57.000000Z' } }
tags:
- Domains
parameters:
-
in: path
name: domain
description: 'Optional parameter. Domain id assigned to your application.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: '1'
'/api/domains/{domain}/subdomains':
post:
summary: 'Create subdomain for domain.'
description: "Creates subdomain for your domain.\n\"Empty\" subdomain for each domain is created automatically which is default."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
subdomain:
type: string
description: ''
example: voluptatem
$subdomain:
type: string
description: 'You can use subdomain of your domain. If you want to use links.yourdomain.com as base redirect link, you should create domain: yourdomain.com and default subdomain links.'
example: links
$is_default:
type: boolean
description: 'optional This option sets this subdomain as a default.'
example: true
required:
- subdomain
- $subdomain
parameters:
-
in: path
name: domain
description: 'Optional parameter. Existing domain ID assigned to your application. Created Subdomain will be assigned to this domain.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: '1'
'/api/subdomains/{subdomain}':
get:
summary: 'Show subdomain info.'
description: '* @urlParam $subdomain integer Existing subdomain ID. Example: 1'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Domains
parameters:
-
in: path
name: subdomain
description: ''
example: optio
required: true
schema:
type: string
/wl/domains:
get:
summary: 'Get all domains'
description: 'Returns all domains assigned to application.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 109, domain: willms.net, created_at: '2024-05-20T15:24:58.000000Z' }, { id: 110, domain: rohan.com, created_at: '2024-05-20T15:24:58.000000Z' }]
properties:
data: { type: array, example: [{ id: 109, domain: willms.net, created_at: '2024-05-20T15:24:58.000000Z' }, { id: 110, domain: rohan.com, created_at: '2024-05-20T15:24:58.000000Z' }], items: { type: object } }
tags:
- Domains
'/wl/subdomains/{subdomain}':
get:
summary: 'Show subdomain info.'
description: '* @urlParam $subdomain integer Existing subdomain ID. Example: 1'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Domains
parameters:
-
in: path
name: subdomain
description: ''
example: nihil
required: true
schema:
type: string
/wl/devices/check:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
security: []
'/wl/devices/{order_id}':
get:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Endpoints
security: []
parameters:
-
in: path
name: order_id
description: ''
example: fugit
required: true
schema:
type: string
/wl/devices/url:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
security: []
/wl/reports/audiences:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
security: []
/wl/reports/children:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
security: []
/wl/reports/last-action:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
workspace_ids:
type: array
description: ''
example: [{ }, null]
items: { type: string }
security: []
/wl/stats/unique-entries:
get:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Endpoints
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
shortlink_id:
type: integer
description: ''
example: 12
workspace_id:
type: string
description: ''
example: { }
user_id:
type: string
description: ''
example: { }
security: []
/wl/portal-shares:
put:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
portal:
type: string
description: 'The value must be one of facebook, messenger, whatsapp, x, linkedin, snapchat, instagram, tumbler, telegram, discord, wechat, reddit, email, copy, or sms.'
example: snapchat
placeholder:
type: string
description: ''
example: nesciunt
shortlink_id:
type: string
description: ''
example: perspiciatis
required:
- portal
- shortlink_id
security: []
/wl/portal-shares/share:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Endpoints
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
portal:
type: string
description: 'The value must be one of facebook, messenger, whatsapp, x, linkedin, snapchat, instagram, tumbler, telegram, discord, wechat, reddit, email, copy, or sms.'
example: telegram
shortlink_id:
type: string
description: ''
example: voluptatum
required:
- portal
- shortlink_id
security: []
'/api/shortlinks/{shortlink}/external_metadata/add':
post:
summary: ''
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- ExternalMetadata
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
key:
type: string
description: ''
example: { }
value:
type: string
description: ''
example: { }
data:
type: array
description: ''
example: [[]]
items: { type: object, properties: { key: { type: string, description: '', example: enim }, value: { type: string, description: '', example: et } } }
parameters:
-
in: path
name: shortlink
description: ''
example: perferendis
required: true
schema:
type: string
'/api/shortlinks/{shortlink}/pixeltracks':
get:
summary: 'Get shortlink all Pixel Track actions.'
description: 'Get list of all Pixel Track actions for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }, { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }]
properties:
data: { type: array, example: [{ id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }, { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }], items: { type: object } }
tags:
- 'Facebook Pixel Tracks'
post:
summary: 'Create Facebook Pixel track action for existing shortlink'
description: 'You can create new Facebook Pixel action for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }
properties:
data: { type: object, example: { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] } }
tags:
- 'Facebook Pixel Tracks'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
action:
type: string
description: 'Each Facebook Pixel action need to have action field.'
example: viewContent
attributes:
type: array
description: ''
example: [[]]
items: { type: object, properties: { key: { type: string, description: 'Name of key.', example: fugit }, value: { type: string|int, description: 'Value for the key.', example: nam } }, required: [key, value] }
required:
- action
parameters:
-
in: path
name: shortlink
description: 'Optional parameter. Shortlink Id.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
'/api/shortlinks/{shortlink}/pixeltracks/{pixeltrack}':
delete:
summary: 'Delete Pixel Track action for shortlink.'
description: 'You can delete existing Pixel Track action. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- 'Facebook Pixel Tracks'
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 11
required: true
schema:
type: integer
-
in: path
name: pixeltrack
description: 'PixelTrack Id which will be deleted.'
example: 17
required: true
schema:
type: integer
'/wl/shortlinks/{shortlink}/pixeltracks':
post:
summary: 'Create Facebook Pixel track action for existing shortlink'
description: 'You can create new Facebook Pixel action for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] }
properties:
data: { type: object, example: { id: 1, action: ViewContent, attributes: [{ key: page_type, value: mbc }, { key: business_id, value: 3 }, { key: company_name, value: Test28.01 }, { key: mbc_id, value: 2 }, { key: user_id, value: 3 }, { key: mbc_theme_id, value: 28 }] } }
tags:
- 'Facebook Pixel Tracks'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
action:
type: string
description: 'Each Facebook Pixel action need to have action field.'
example: viewContent
attributes:
type: array
description: ''
example: [[]]
items: { type: object, properties: { key: { type: string, description: 'Name of key.', example: enim }, value: { type: string|int, description: 'Value for the key.', example: labore } }, required: [key, value] }
required:
- action
parameters:
-
in: path
name: shortlink
description: 'Id of shortlink. Created Facebook Pixel action will be assigned to this shortlink'
example: 1
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/heads':
get:
summary: 'Get shortlink all tags.'
description: 'Get list of all heads tags for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }, { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }]
properties:
data: { type: array, example: [{ id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }, { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }], items: { type: object } }
tags:
- Heads
post:
summary: 'Create Head section.'
description: 'You can create any tag which will be placed between ....'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }
properties:
data: { type: object, example: { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' } }
tags:
- Heads
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
head:
type: string
description: 'Full tag.'
example: ''
required:
- head
parameters:
-
in: path
name: shortlink
description: 'Optional parameter. Shortlink Id.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
'/api/shortlinks/{shortlink}/heads/{head}':
put:
summary: 'Update Head for shortlink.'
description: 'You can update existing Head.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' }
properties:
data: { type: object, example: { id: 52, head: '', created_at: '2021-06-15T13:23:25.000000Z' } }
tags:
- Heads
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
head:
type: string
description: ''
example: unde
required:
- head
delete:
summary: 'Delete head for shortlink.'
description: 'You can delete existing head. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Heads
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 15
required: true
schema:
type: integer
-
in: path
name: head
description: 'Head which will be updated.'
example: 10
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/interstitials':
get:
summary: 'Get shortlink all interstitials.'
description: 'Get list of all interstitials for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }, { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }]
properties:
data: { type: array, example: [{ id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }, { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }], items: { type: object } }
tags:
- Interstitials
post:
summary: 'Create Interstitial for shortlink.'
description: 'You can create new Interstitial for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] } }
tags:
- Interstitials
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
type: string
description: 'The value must be one of IFRAME, POPUP, or HTML.'
example: POPUP
url:
type: string
description: '(Required if type is IFRAME) Content of interstitial shown in IFRAME.'
example: sapiente
html:
type: string
description: '(Required if type is HTML) Content of interstitial as a html tags'
example: maxime
title:
type: string
description: '(Required if type is POPUP) Title of popup interstitial.'
example: voluptates
body:
type: string
description: '(Required if type is POPUP) Body of popup.'
example: consequatur
is_default:
type: boolean
description: '(Required if conditions are not set).'
example: false
conditions:
type: array
description: '(Required if is_default is not set).'
example: [[], []]
items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: RETURNING }, operator: { type: string, description: 'The value must be one of BETWEEN, EQUAL, LESS THAN, GREATER THAN, or IN RANGE.', example: BETWEEN }, first_date: { type: string, description: '(Required if type is DATE). Date format: Y-m-d H:i:s', example: quidem }, second_date: { type: string, description: '(Required if type is DATE and operator is BETWEEN). Date format: Y-m-d H:i:s', example: sit }, first_time: { type: string, description: '(Required if type is TIME). Time format: h:i:s A', example: voluptatem }, second_time: { type: string, description: '(Required if type is TIME and operator is BETWEEN). Time format: h:i:s A', example: reprehenderit }, continent_code: { type: string, description: '(Required if type is CONTINENT and continent is not present). 2 characters long.', example: et }, continent: { type: string, description: '(Required if type is CONTINENT and continent_code is not present).', example: sint }, country_code: { type: string, description: '(Required if type is COUNTRY and country is not present). 2 characters long.', example: expedita }, country: { type: string, description: '(Required if type is COUNTRY and country_code is not present).', example: nemo }, region_code: { type: string, description: '(Required if type is REGION and region is not present). 2 characters long.', example: ea }, region: { type: string, description: '(Required if type is REGION and region_code is not present).', example: inventore }, latitude: { type: numeric, description: '(Required if type is LATLONG). Between: -90.0000000,90.0000000', example: et }, longitude: { type: numeric, description: '(Required if type is LATLONG). Between: -180.0000000,180.0000000', example: eveniet }, range: { type: integer, description: '(Required if type is LATLONG). Between: 10, 10000. Value in miles.', example: 6 }, temperature: { type: integer, description: '(Required if type is TEMPERATURE). Between: -60, 60. Value in Celsius.', example: 6 }, weather: { type: string, description: '(Required if type is WEATHER). In: SUNNY, CLEAN, RAINY, FOGGY, SNOWY, CLOUDY, STORMY, HAIL', example: modi } }, required: [type, operator] }
required:
- type
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 3
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/interstitials/{interstitial}':
put:
summary: 'Update Interstitial for shortlink.'
description: 'You can update existing interstitial.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] }
properties:
data: { type: object, example: { id: 2, type: IFRAME, url: 'https://ct.winlocal.io/knadtest/iframecontent/index.html', html: null, title: null, body: null, is_default: 1, conditions: [] } }
tags:
- Interstitials
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
type: string
description: 'The value must be one of IFRAME, POPUP, or HTML.'
example: IFRAME
url:
type: string
description: 'The value must be a valid URL.'
example: 'https://www.crooks.com/ea-cum-ut-totam-repellendus'
html:
type: string
description: ''
example: { }
title:
type: string
description: ''
example: { }
body:
type: string
description: ''
example: { }
required:
- type
delete:
summary: 'Delete Interstitial for shortlink.'
description: 'You can delete existing Interstitial. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Interstitials
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 11
required: true
schema:
type: integer
-
in: path
name: interstitial
description: 'Interstitial which will be updated.'
example: 1
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/linkedinpixels':
get:
summary: 'Get shortlink all Linkedin Pixel Partner Ids'
description: 'Get list of all Linkedin Pixel Partner Ids for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 1, linkedin_partner_id: '3255674' }, { id: 1, linkedin_partner_id: '3255674' }]
properties:
data: { type: array, example: [{ id: 1, linkedin_partner_id: '3255674' }, { id: 1, linkedin_partner_id: '3255674' }], items: { type: object } }
tags:
- 'Linkedin Pixel'
post:
summary: 'Create Linkedin Pixel for existing shortlink'
description: 'You can create new Linkedin Pixel for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, linkedin_partner_id: '3255674' }
properties:
data: { type: object, example: { id: 1, linkedin_partner_id: '3255674' } }
tags:
- 'Linkedin Pixel'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
linkedin_partner_id:
type: string
description: 'Linkedin Partner Id'
example: viewContent
required:
- linkedin_partner_id
parameters:
-
in: path
name: shortlink
description: 'Optional parameter. Shortlink Id.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
'/api/shortlinks/{shortlink}/linkedinpixels/{linkedinpixel}':
delete:
summary: 'Delete Linkedin Pixel from shortlink.'
description: 'You can delete existing Linkedin Pixel. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- 'Linkedin Pixel'
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 8
required: true
schema:
type: integer
-
in: path
name: linkedinpixel
description: 'Linkedin Pixel Id which will be deleted.'
example: 20
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/ogtags':
get:
summary: 'Get shortlink all tags.'
description: 'Get list of all og tags for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }, { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }]
properties:
data: { type: array, example: [{ id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }, { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }], items: { type: object } }
tags:
- OgTags
post:
summary: 'Create OgTag for shortlink.'
description: 'You can create new OgTag for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }
properties:
data: { type: object, example: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' } }
tags:
- OgTags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
property:
type: string
description: 'Each OgTag need to have property field.'
example: 'og:title'
content:
type: string
description: 'Value for OgTag.'
example: 'Title for my shortlink'
required:
- property
- content
parameters:
-
in: path
name: shortlink
description: 'Optional parameter. Shortlink Id.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 1
'/api/shortlinks/{shortlink}/ogtags/{ogtag}':
put:
summary: 'Update OgTag for shortlink.'
description: 'You can update existing OgTag.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }
properties:
data: { type: object, example: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' } }
tags:
- OgTags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
property:
type: string
description: ''
example: repellendus
content:
type: string
description: ''
example: dignissimos
required:
- property
- content
delete:
summary: 'Delete OgTag for shortlink.'
description: 'You can delete existing OgTag. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- OgTags
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 7
required: true
schema:
type: integer
-
in: path
name: ogtag
description: 'OgTag which will be updated.'
example: 6
required: true
schema:
type: integer
'/wl/shortlinks/{shortlink}/ogtags':
post:
summary: 'Create OgTag for shortlink.'
description: 'You can create new OgTag for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }
properties:
data: { type: object, example: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' } }
tags:
- OgTags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
property:
type: string
description: 'Each OgTag need to have property field.'
example: 'og:title'
content:
type: string
description: 'Value for OgTag.'
example: 'Title for my shortlink'
required:
- property
- content
parameters:
-
in: path
name: shortlink
description: 'Id of shortlink. Created OgTags will be assigned to this shortlink'
example: 1
required: true
schema:
type: integer
'/wl/shortlinks/{shortlink}/ogtags/{ogtag}':
delete:
summary: 'Delete OgTag for shortlink.'
description: 'You can delete existing OgTag. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- OgTags
put:
summary: 'Update OgTag for shortlink.'
description: 'You can update existing OgTag.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' }
properties:
data: { type: object, example: { id: 1, property: 'og:title', content: 'Bedford Hall Craft Kitchen & Bar', created_at: '2020-11-23T16:00:30.000000Z' } }
tags:
- OgTags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
property:
type: string
description: ''
example: et
content:
type: string
description: ''
example: voluptatum
required:
- property
- content
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 3
required: true
schema:
type: integer
-
in: path
name: ogtag
description: 'OgTag Id which will be deleted.'
example: 18
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/scripts':
get:
summary: 'Get shortlink all scripts.'
description: 'Get list of all scripts for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: null, script: null, noscript: null }, { id: null, script: null, noscript: null }]
properties:
data: { type: array, example: [{ id: null, script: null, noscript: null }, { id: null, script: null, noscript: null }], items: { type: object } }
tags:
- Scripts
post:
summary: 'Create Script for shortlink.'
description: 'You can create new Scripts for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: null, script: null, noscript: null }
properties:
data: { type: object, example: { id: null, script: null, noscript: null } }
tags:
- Scripts
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
script:
type: string
description: 'Script which will be run if end-user has javascript enabled.'
example: beatae
noscript:
type: string
description: 'The <noscript> tag defines an alternate content to be displayed to users that have disabled scripts in their browser or have a browser that doesn''t support script.'
example: laborum
required:
- script
parameters:
-
in: path
name: shortlink
description: 'Optional parameter. Shortlink Id.'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 9
'/api/shortlinks/{shortlink}/scripts/{script}':
put:
summary: 'Update Script for shortlink.'
description: 'You can update existing Script.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Scripts
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
script:
type: string
description: ''
example: ut
noscript:
type: string
description: ''
example: { }
required:
- script
delete:
summary: 'Delete Script for shortlink.'
description: 'You can delete existing Script. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Scripts
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 13
required: true
schema:
type: integer
-
in: path
name: script
description: ''
example: beatae
required: true
schema:
type: string
-
in: path
name: ogtag
description: 'OgTag which will be updated.'
example: 2
required: true
schema:
type: integer
/api/shortlinks:
get:
summary: 'Get all shortlinks'
description: 'Returns all shortlinks assigned to application.'
parameters:
-
in: query
name: 'filter[alias]'
description: 'Filter results by alias. Available filters: alias subdomain domain external_id subdomain_id external_metadata, has_pixel_tracks'
example: '?filter[has_pixel_tracks]=0&filter[external_metadata]=user_uuid:XX-YY'
required: false
schema:
type: string
description: 'Filter results by alias. Available filters: alias subdomain domain external_id subdomain_id external_metadata, has_pixel_tracks'
example: '?filter[has_pixel_tracks]=0&filter[external_metadata]=user_uuid:XX-YY'
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 24328, shortlink: beier.com/magni, alias: magni, default_destination_url: '', domain: beier.com, subdomain: null, external_id: f79cba10-096f-31d1-a436-81f68280722d, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }, { id: 24329, shortlink: shanahan.com/aspernatur, alias: aspernatur, default_destination_url: '', domain: shanahan.com, subdomain: null, external_id: 983171f9-1654-31ce-a588-433c846f5db8, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }]
properties:
data: { type: array, example: [{ id: 24328, shortlink: beier.com/magni, alias: magni, default_destination_url: '', domain: beier.com, subdomain: null, external_id: f79cba10-096f-31d1-a436-81f68280722d, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }, { id: 24329, shortlink: shanahan.com/aspernatur, alias: aspernatur, default_destination_url: '', domain: shanahan.com, subdomain: null, external_id: 983171f9-1654-31ce-a588-433c846f5db8, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }], items: { type: object } }
tags:
- Shortlinks
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
breakdown:
type: string
description: 'The value must be one of OVERALL, DAILY, or HOURLY.'
example: OVERALL
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:57+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:57+0000'
post:
summary: 'Create shortlink'
description: "Comfortable endpoint to create shortlink with with all its components like Interstitials, OgTag, etc..\n"
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24333, shortlink: oberbrunner.com/placeat, alias: placeat, default_destination_url: '', domain: oberbrunner.com, subdomain: null, external_id: 8c060edf-f9ce-372d-a432-88675a887bb0, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24333, shortlink: oberbrunner.com/placeat, alias: placeat, default_destination_url: '', domain: oberbrunner.com, subdomain: null, external_id: 8c060edf-f9ce-372d-a432-88675a887bb0, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
alias:
type: string
description: 'optional Unique part of shortlink occurs after domain first slash. (Generated if not provided)'
example: frm449dw21
default_destination_uri:
type: string
description: 'Default shortlink destinations. End user will be redirect there when will not meet another conditional based destinations.'
example: 'https://www.winlocalnow.com'
subdomain_id:
type: integer
description: '(Required if subdomain and domain are not present) Id of subdomain.'
example: 1
domain:
type: string
description: '(Requierd if subdomain_id is not present) Domain.'
example: yourdomian.com
hide_nav_bar:
type: string
description: 'The value must be one of 1, 1, or true.'
example: '1'
subdomain:
type: string
description: '(Requierd if subdomain_id is not present) Subdomain.'
example: links
external_id:
type: string
description: 'Id from your system related to shortlink. You will get this each time you retrieve shortlink info.'
example: '111'
external_metadata:
type: string
description: 'Data from your system related to shortlink. The value must be a valid JSON string.'
example: { systemId: Qh7f43hXfufLWdsaPQsab43u, timestamp: 1607186812 }
og_tags:
type: array
description: 'List of OgTags.'
example: [[], []]
items: { type: object, properties: { property: { type: string, description: 'OgTag type (read more on ogp.me).', example: 'og:title' }, content: { type: string, description: 'OgTag value for given OgTag type.', example: 'My title seen on Facebook' } }, required: [property, content] }
pixel_tracks:
type: array
description: 'List of Pixel Track actions.'
example: [[], []]
items: { type: object, properties: { action: { type: string, description: 'Pixel Track action. It will be provided in fbq("track","[action]"...) script.', example: sint }, attributes: { type: array, description: '', example: [[]], items: { type: object, properties: { key: { type: string, description: '', example: ut }, value: { type: string, description: '', example: { } } } } }, 'attributes[]': { type: array, description: 'Array of key-value objects which will be passed to fbq("track","[action], [attributes]).', example: [[], []], items: { type: object } } }, required: [action, 'attributes[]'] }
linkedin_pixels:
type: 'object[].linkedin_partner_id'
description: 'string required Id of Linkedin Partnership.'
example: ipsa
scripts:
type: array
description: 'List of scripts which you want to run during redirections'
example: [[], []]
items: { type: object, properties: { script: { type: string, description: 'Script which will be run if end-user has javascript enabled.', example: sapiente }, noscript: { type: string, description: 'The <noscript> tag defines an alternate content to be displayed to users that have disabled scripts in their browser or have a browser that doesn''t support script.', example: quidem } }, required: [script, noscript] }
interstitials:
type: array
description: ''
example: [[]]
items: { type: object, properties: { type: { type: string, description: 'The value must be one of IFRAME, POPUP, or HTML.', example: IFRAME }, url: { type: string, description: 'The value must be a valid URL.', example: 'https://www.sipes.org/quia-iure-qui-veniam-nesciunt-consequatur' }, html: { type: string, description: '', example: { } }, title: { type: string, description: '', example: { } }, body: { type: string, description: '', example: { } }, is_default: { type: string, description: 'The value must be one of 1, 1, or true.', example: '1' }, conditions: { type: array, description: '', example: [[]], items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: REGION } } } } } }
signals:
type: array
description: 'Signals registered for this shortlink.'
example: null
items: { type: object, properties: { method: { type: string, description: 'The value must be one of EMAIL, POST, or GET.', example: POST }, events: { type: array, description: 'The value must be one of shortlink.entered, destination.redirected, condition.fulfilled, or condition.unfulfilled.', example: [condition.unfulfilled, shortlink.entered], items: { type: string } }, conditions: { type: array, description: '', example: [[]], items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: DATE } } } }, is_default: { type: string, description: 'The value must be one of 1, 1, or true.', example: '1' } }, required: [method] }
destinations:
type: array
description: 'List of shortlink destinations.'
example: [[], []]
items: { type: object, properties: { uri: { type: string, description: 'The final redirect link.', example: debitis }, conditions: { type: array, description: '', example: [nam], items: { type: string } }, is_default: { type: boolean, description: 'Set this destination to default. (It overwrites default_destination_uri).', example: false }, 'conditions[]': { type: array, description: 'Required if is_default is not set. Conditions are dynamic and validation is based on type property.', example: [[], []], items: { type: object } } }, required: [uri] }
heads:
type: array
description: 'List of html object which will be placed in between tags in redirection page. Please do not use it to place a scripts. Scripts should be make as a scripts.'
example: [[], []]
items: { type: object, properties: { head: { type: string, description: 'Full tag.', example: ullam } }, required: [head] }
required:
- default_destination_uri
'/api/shortlinks/{shortlink}':
get:
summary: 'Get single shortlink'
description: 'Returns single shortlinks assigned to application with all conditions.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24330, shortlink: nader.info/quam, alias: quam, default_destination_url: '', domain: nader.info, subdomain: null, external_id: 07c79861-d9b8-3482-a880-4bb6016291c2, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24330, shortlink: nader.info/quam, alias: quam, default_destination_url: '', domain: nader.info, subdomain: null, external_id: 07c79861-d9b8-3482-a880-4bb6016291c2, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
delete:
summary: 'Delete shortlink'
description: "You can delete existing shortlink. This action can not be undone!\nShortlink statistics will not be accessible from API."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Shortlinks
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
'/api/shortlinks/external/{external_id}':
get:
summary: 'Get shortlinks via external_id'
description: 'Returns all shortlinks with given external_id.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 24331, shortlink: adams.sanford.com/eligendi, domain: sanford.com, subdomain: adams, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], stats: { id: 24331, breakdown: OVERALL, shortlink: adams.sanford.com/eligendi, stats: { base: { entries: [], destinations: [] } } } }, { id: 24332, shortlink: mueller.rowe.com/nemo, domain: rowe.com, subdomain: mueller, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], stats: { id: 24332, breakdown: OVERALL, shortlink: mueller.rowe.com/nemo, stats: { base: { entries: [], destinations: [] } } } }]
links: { first: '/?page=1', last: '/?page=1', prev: null, next: null }
meta: { current_page: 1, from: 1, last_page: 1, links: [{ url: null, label: '« Previous', active: false }, { url: '/?page=1', label: '1', active: true }, { url: null, label: 'Next »', active: false }], path: /, per_page: '15', to: 2, total: 2 }
properties:
data: { type: array, example: [{ id: 24331, shortlink: adams.sanford.com/eligendi, domain: sanford.com, subdomain: adams, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], stats: { id: 24331, breakdown: OVERALL, shortlink: adams.sanford.com/eligendi, stats: { base: { entries: [], destinations: [] } } } }, { id: 24332, shortlink: mueller.rowe.com/nemo, domain: rowe.com, subdomain: mueller, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], stats: { id: 24332, breakdown: OVERALL, shortlink: mueller.rowe.com/nemo, stats: { base: { entries: [], destinations: [] } } } }], items: { type: object } }
links: { type: object, example: { first: '/?page=1', last: '/?page=1', prev: null, next: null } }
meta: { type: object, example: { current_page: 1, from: 1, last_page: 1, links: [{ url: null, label: '« Previous', active: false }, { url: '/?page=1', label: '1', active: true }, { url: null, label: 'Next »', active: false }], path: /, per_page: '15', to: 2, total: 2 } }
tags:
- Shortlinks
parameters:
-
in: path
name: external_id
description: External_id
example: labore
required: true
schema:
type: string
/api/shortlinks/check:
post:
summary: 'Check alias'
description: "You can check alias availability in scope of domain or subdomain.\nResponse with status code 200 means that alias is available.\nResponse with status code 422 means that alias has been already taken."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
application/json:
schema:
type: object
example:
data: { status: available, shortlink: www.linkto.us/test }
properties:
data: { type: object, example: { status: available, shortlink: www.linkto.us/test } }
422:
description: '422'
content:
application/json:
schema:
type: object
example:
message: 'The given data was invalid.'
errors: { alias: ['Shortlink alias must be unique in scope of subdomain.'] }
properties:
message: { type: string, example: 'The given data was invalid.' }
errors: { type: object, example: { alias: ['Shortlink alias must be unique in scope of subdomain.'] } }
403:
description: '403'
content:
application/json:
schema:
type: object
example:
message: 'This action is unauthorized.'
properties:
message: { type: string, example: 'This action is unauthorized.' }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
alias:
type: string
description: 'Unique part of shortlink occurs after domain first slash.'
example: test
domain:
type: string
description: '(Requierd if domain_id is not present) Domain.'
example: linkto.us
domain_id:
type: integer
description: '(Requierd if domain is not present) Domain Id.'
example: 1
subdomain_id:
type: integer
description: ''
example: 15
subdomain:
type: string
description: 'Use specific subdomain for check.'
example: veritatis
required:
- alias
/api/shortlinks/validate-hash:
post:
summary: 'Get shortlink via hash'
description: 'Return link with given hash.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24334, shortlink: murazik.klein.com/delectus, alias: delectus, default_destination_url: '', domain: klein.com, subdomain: murazik, external_id: 39684b28-fafc-3a92-a7ff-a8690d5dde04, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24334, shortlink: murazik.klein.com/delectus, alias: delectus, default_destination_url: '', domain: klein.com, subdomain: murazik, external_id: 39684b28-fafc-3a92-a7ff-a8690d5dde04, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
hash:
type: string
description: 'Hash provided from shortlink from h url parameter.'
example: eyf43f4fdsfe3er3
required:
- hash
/api/shortlinks/device:
post:
summary: 'Create Device'
description: 'Creates device link'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24335, shortlink: jacobson.cummerata.com/perferendis, alias: perferendis, default_destination_url: '', domain: cummerata.com, subdomain: jacobson, external_id: 4578b206-e0ee-3155-8b59-f49c6612bf18, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24335, shortlink: jacobson.cummerata.com/perferendis, alias: perferendis, default_destination_url: '', domain: cummerata.com, subdomain: jacobson, external_id: 4578b206-e0ee-3155-8b59-f49c6612bf18, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
external_id:
type: string
description: 'Id from external service to associate with'
example: '4'
required:
- external_id
'/api/shortlinks/{shortlink}/scenario':
get:
summary: 'Get scenarios'
description: 'Returns all scenarios and destinations for shortlink assigned to application.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }
properties:
data: { type: object, example: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } } }
tags:
- Shortlinks
parameters:
-
in: path
name: shortlink
description: ''
example: ducimus
required: true
schema:
type: string
'/api/shortlinks/{shortlink}/scenario/stats':
get:
summary: 'Get scenarios with statistics'
description: 'Returns all scenarios for shortlink with statistics of conditions and destinations'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }
properties:
data: { type: object, example: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } } }
tags:
- Shortlinks
parameters:
-
in: path
name: shortlink
description: ''
example: repudiandae
required: true
schema:
type: string
'/api/shortlinks/{shortlink}/scenario/{scenario}':
post:
summary: 'Update Scenario'
description: 'You can update specific scenario or all scenarios for a shortlink. If you add IDs then the item will be overwritten.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }
properties:
data: { type: object, example: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } } }
tags:
- Shortlinks
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
condition:
type: json
description: Required
example: '{"type":"scenario","condition":{"type":"city","city":"Krakow","operator":"EQUAL"},"fulfilled":{"uri":"https://maa.pl","type":"destination"},"unfulfilled":{"type":"scenario","condition":{"type":"city","city":"Warszawa","operator":"EQUAL"},"fulfilled":{"uri":"https://warszawa.pl","type":"destination"},"unfulfilled":{"type":"destination_group","uris":[{"uri":"http://chicago1.com","type":"destination"},{"uri":"http://chicago2.com","type":"destination"}]}}}'
put:
summary: 'Update Condition'
description: 'You can update condition of specific scenario'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }
properties:
data: { type: object, example: { id: 1, type: scenario, condition: { id: 42, type: city, city: Krakow, operator: EQUAL }, fulfilled: { id: 6643, uri: 'https://krakow.pl', type: destination }, unfulfilled: { id: 2, type: scenario, condition: { id: 43, type: city, city: Warszawa, operator: EQUAL }, fulfilled: { id: 6644, uri: 'https://warszawa.pl', type: destination }, unfulfilled: { id: 1, type: destination_group, uris: [{ id: 6645, uri: 'http://chicago1.com', type: destination }, { id: 6646, uri: 'http://chicago2.com', type: destination }] }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } }, shortlink: { id: 6588, shortlink: dev.linkto.us/H0sXKZ, alias: H0sXKZ, default_destination_url: 'http://taternictwo.pl', domain: linkto.us, subdomain: dev, external_id: null, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [{ id: 6642, uri: 'http://taternictwo.pl', is_default: 1, conditions: [] }, { id: 6643, uri: 'https://krakow.pl', is_default: 0, conditions: [] }, { id: 6644, uri: 'https://warszawa.pl', is_default: 0, conditions: [] }, { id: 6645, uri: 'http://chicago1.com', is_default: 0, conditions: [] }, { id: 6646, uri: 'http://chicago2.com', is_default: 0, conditions: [] }], portal_shares: [], shares: [] } } }
tags:
- Shortlinks
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
condition:
type: json
description: Required
example: '{"condition":{"type":"CITY","operator":"EQUAL","city":"New York"}}'
delete:
summary: 'Remove scenario'
description: 'Endpoint for removing scenario with conditions and destinations'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Shortlinks
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 6
required: true
schema:
type: integer
-
in: path
name: scenario
description: 'Optional parameter.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: magni
'/wl/shortlinks/{shortlink}':
get:
summary: 'Get single shortlink'
description: 'Returns single shortlinks assigned to application with all conditions.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24338, shortlink: cassin.willms.com/nihil, alias: nihil, default_destination_url: '', domain: willms.com, subdomain: cassin, external_id: 39c4870f-3d9c-3534-8c7b-425101b70dea, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24338, shortlink: cassin.willms.com/nihil, alias: nihil, default_destination_url: '', domain: willms.com, subdomain: cassin, external_id: 39c4870f-3d9c-3534-8c7b-425101b70dea, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
delete:
summary: 'Delete shortlink'
description: "You can delete existing shortlink. This action can not be undone!\nShortlink statistics will not be accessible from API."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
/wl/shortlinks:
post:
summary: 'Create shortlink'
description: "Comfortable endpoint to create shortlink with with all its components like Interstitials, OgTag, etc..\n"
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24340, shortlink: crist.biz/inventore, alias: inventore, default_destination_url: '', domain: crist.biz, subdomain: null, external_id: 2c0c7567-f5cd-31f6-8d1b-016f657b0bca, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] }
properties:
data: { type: object, example: { id: 24340, shortlink: crist.biz/inventore, alias: inventore, default_destination_url: '', domain: crist.biz, subdomain: null, external_id: 2c0c7567-f5cd-31f6-8d1b-016f657b0bca, external_metadata: null, og_tags: [], pixel_tracks: [], scripts: [], signals: [], interstitials: [], destinations: [], portal_shares: [], shares: [] } }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
alias:
type: string
description: 'optional Unique part of shortlink occurs after domain first slash. (Generated if not provided)'
example: frm449dw21
default_destination_uri:
type: string
description: 'Default shortlink destinations. End user will be redirect there when will not meet another conditional based destinations.'
example: 'https://www.winlocalnow.com'
subdomain_id:
type: integer
description: '(Required if subdomain and domain are not present) Id of subdomain.'
example: 1
domain:
type: string
description: '(Requierd if subdomain_id is not present) Domain.'
example: yourdomian.com
hide_nav_bar:
type: string
description: 'The value must be one of 1, 1, or true.'
example: 'true'
subdomain:
type: string
description: '(Requierd if subdomain_id is not present) Subdomain.'
example: links
external_id:
type: string
description: 'Id from your system related to shortlink. You will get this each time you retrieve shortlink info.'
example: '111'
external_metadata:
type: string
description: 'Data from your system related to shortlink. The value must be a valid JSON string.'
example: { systemId: Qh7f43hXfufLWdsaPQsab43u, timestamp: 1607186812 }
og_tags:
type: array
description: 'List of OgTags.'
example: [[], []]
items: { type: object, properties: { property: { type: string, description: 'OgTag type (read more on ogp.me).', example: 'og:title' }, content: { type: string, description: 'OgTag value for given OgTag type.', example: 'My title seen on Facebook' } }, required: [property, content] }
pixel_tracks:
type: array
description: 'List of Pixel Track actions.'
example: [[], []]
items: { type: object, properties: { action: { type: string, description: 'Pixel Track action. It will be provided in fbq("track","[action]"...) script.', example: voluptas }, attributes: { type: array, description: '', example: [[]], items: { type: object, properties: { key: { type: string, description: '', example: aut }, value: { type: string, description: '', example: { } } } } }, 'attributes[]': { type: array, description: 'Array of key-value objects which will be passed to fbq("track","[action], [attributes]).', example: [[], []], items: { type: object } } }, required: [action, 'attributes[]'] }
linkedin_pixels:
type: 'object[].linkedin_partner_id'
description: 'string required Id of Linkedin Partnership.'
example: est
scripts:
type: array
description: 'List of scripts which you want to run during redirections'
example: [[], []]
items: { type: object, properties: { script: { type: string, description: 'Script which will be run if end-user has javascript enabled.', example: occaecati }, noscript: { type: string, description: 'The <noscript> tag defines an alternate content to be displayed to users that have disabled scripts in their browser or have a browser that doesn''t support script.', example: magnam } }, required: [script, noscript] }
interstitials:
type: array
description: ''
example: [[]]
items: { type: object, properties: { type: { type: string, description: 'The value must be one of IFRAME, POPUP, or HTML.', example: IFRAME }, url: { type: string, description: 'The value must be a valid URL.', example: 'http://www.kuphal.com/ea-totam-eos-eum-consequatur-veniam' }, html: { type: string, description: '', example: { } }, title: { type: string, description: '', example: { } }, body: { type: string, description: '', example: { } }, is_default: { type: string, description: 'The value must be one of 1, 1, or true.', example: '1' }, conditions: { type: array, description: '', example: [[]], items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: REGION } } } } } }
signals:
type: array
description: 'Signals registered for this shortlink.'
example: null
items: { type: object, properties: { method: { type: string, description: 'The value must be one of EMAIL, POST, or GET.', example: GET }, events: { type: array, description: 'The value must be one of shortlink.entered, destination.redirected, condition.fulfilled, or condition.unfulfilled.', example: [shortlink.entered, shortlink.entered], items: { type: string } }, conditions: { type: array, description: '', example: [[]], items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: CONTINENT } } } }, is_default: { type: string, description: 'The value must be one of 1, 1, or true.', example: 'true' } }, required: [method] }
destinations:
type: array
description: 'List of shortlink destinations.'
example: [[], []]
items: { type: object, properties: { uri: { type: string, description: 'The final redirect link.', example: repudiandae }, conditions: { type: array, description: '', example: [nam], items: { type: string } }, is_default: { type: boolean, description: 'Set this destination to default. (It overwrites default_destination_uri).', example: false }, 'conditions[]': { type: array, description: 'Required if is_default is not set. Conditions are dynamic and validation is based on type property.', example: [[], []], items: { type: object } } }, required: [uri] }
heads:
type: array
description: 'List of html object which will be placed in between tags in redirection page. Please do not use it to place a scripts. Scripts should be make as a scripts.'
example: [[], []]
items: { type: object, properties: { head: { type: string, description: 'Full tag.', example: vero } }, required: [head] }
required:
- default_destination_uri
get:
summary: 'Get all shortlinks'
description: 'Each field is available as a filter.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
start_date:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
end_date:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
/wl/shortlinks/check:
post:
summary: 'Check alias'
description: "You can check alias availability in scope of domain or subdomain.\nResponse with status code 200 means that alias is available.\nResponse with status code 422 means that alias has been already taken."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
application/json:
schema:
type: object
example:
data: { status: available, shortlink: www.linkto.us/test }
properties:
data: { type: object, example: { status: available, shortlink: www.linkto.us/test } }
422:
description: '422'
content:
application/json:
schema:
type: object
example:
message: 'The given data was invalid.'
errors: { alias: ['Shortlink alias must be unique in scope of subdomain.'] }
properties:
message: { type: string, example: 'The given data was invalid.' }
errors: { type: object, example: { alias: ['Shortlink alias must be unique in scope of subdomain.'] } }
403:
description: '403'
content:
application/json:
schema:
type: object
example:
message: 'This action is unauthorized.'
properties:
message: { type: string, example: 'This action is unauthorized.' }
tags:
- Shortlinks
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
alias:
type: string
description: 'Unique part of shortlink occurs after domain first slash.'
example: test
domain:
type: string
description: '(Requierd if domain_id is not present) Domain.'
example: linkto.us
domain_id:
type: integer
description: '(Requierd if domain is not present) Domain Id.'
example: 1
subdomain_id:
type: integer
description: ''
example: 2
subdomain:
type: string
description: 'Use specific subdomain for check.'
example: consequuntur
required:
- alias
'/api/shortlinks/{shortlink}/signals':
get:
summary: 'Get shortlink all signals.'
description: 'Get list of all signals for certain shortlink'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: [{ id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }, { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }]
properties:
data: { type: array, example: [{ id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }, { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }], items: { type: object } }
tags:
- Signals
post:
summary: 'Create Signal for shortlink.'
description: 'You can create new Signal for existing shortlink.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }
properties:
data: { type: object, example: { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] } }
tags:
- Signals
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
method:
type: string
description: 'The value must be one of EMAIL, POST, or GET.'
example: EMAIL
events:
type: array
description: 'The value must be one of shortlink.entered, destination.redirected, condition.fulfilled, or condition.unfulfilled.'
example: [destination.redirected, condition.unfulfilled]
items: { type: string }
is_default:
type: boolean
description: '(Required if conditions are not set).'
example: false
conditions:
type: array
description: '(Required if is_default is not set).'
example: [[], []]
items: { type: object, properties: { type: { type: string, description: 'The value must be one of DATE, TIME, CONTINENT, COUNTRY, REGION, CITY, RETURNING, LATLONG, TEMPERATURE, or WEATHER.', example: TEMPERATURE }, operator: { type: string, description: 'The value must be one of BETWEEN, EQUAL, LESS THAN, GREATER THAN, or IN RANGE.', example: 'IN RANGE' }, first_date: { type: string, description: '(Required if type is DATE). Date format: Y-m-d H:i:s', example: recusandae }, second_date: { type: string, description: '(Required if type is DATE and operator is BETWEEN). Date format: Y-m-d H:i:s', example: ut }, first_time: { type: string, description: '(Required if type is TIME). Time format: h:i:s A', example: nobis }, second_time: { type: string, description: '(Required if type is TIME and operator is BETWEEN). Time format: h:i:s A', example: non }, continent_code: { type: string, description: '(Required if type is CONTINENT and continent is not present). 2 characters long.', example: suscipit }, continent: { type: string, description: '(Required if type is CONTINENT and continent_code is not present).', example: qui }, country_code: { type: string, description: '(Required if type is COUNTRY and country is not present). 2 characters long.', example: vel }, country: { type: string, description: '(Required if type is COUNTRY and country_code is not present).', example: facere }, region_code: { type: string, description: '(Required if type is REGION and region is not present). 2 characters long.', example: ratione }, region: { type: string, description: '(Required if type is REGION and region_code is not present).', example: et }, latitude: { type: numeric, description: '(Required if type is LATLONG). Between: -90.0000000,90.0000000', example: neque }, longitude: { type: numeric, description: '(Required if type is LATLONG). Between: -180.0000000,180.0000000', example: alias }, range: { type: integer, description: '(Required if type is LATLONG). Between: 10, 10000. Value in miles.', example: 1 }, temperature: { type: integer, description: '(Required if type is TEMPERATURE). Between: -60, 60. Value in Celsius.', example: 14 }, weather: { type: string, description: '(Required if type is WEATHER). In: SUNNY, CLEAN, RAINY, FOGGY, SNOWY, CLOUDY, STORMY, HAIL', example: occaecati } }, required: [type, operator] }
required:
- method
- events
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 11
required: true
schema:
type: integer
'/api/shortlinks/{shortlink}/signals/{signal}':
put:
summary: 'Update Signal for shortlink.'
description: 'You can update existing signal.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] }
properties:
data: { type: object, example: { id: 510, method: POST, events: [shortlink.entered, destination.redirected], is_default: true, created_at: '2021-03-30T14:03:18.000000Z', conditions: [] } }
tags:
- Signals
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
method:
type: string
description: 'The value must be one of EMAIL, POST, or GET.'
example: POST
events:
type: array
description: 'The value must be one of shortlink.entered, destination.redirected, condition.fulfilled, or condition.unfulfilled.'
example: [condition.unfulfilled, condition.fulfilled]
items: { type: string }
required:
- method
- events
delete:
summary: 'Delete Signal for shortlink.'
description: 'You can delete existing Signal. This action can not be undone!'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: '200'
content:
text/plain:
schema:
type: string
example: '{[]}'
tags:
- Signals
parameters:
-
in: path
name: shortlink
description: 'Shortlink Id.'
example: 6
required: true
schema:
type: integer
-
in: path
name: signal
description: 'Signal which will be updated.'
example: 8
required: true
schema:
type: integer
/api/app/stats:
get:
summary: 'Application statistics'
description: 'Show all available statistics for application.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 79, breakdown: OVERALL, application: 'Dooley, Lockman and Upton', stats: { base: { entries: null } } }
properties:
data: { type: object, example: { id: 79, breakdown: OVERALL, application: 'Dooley, Lockman and Upton', stats: { base: { entries: null } } } }
tags:
- Stats
/api/shortlinks/all-stats:
get:
summary: 'Shortlink statistics'
description: 'Show all available statistics for shortlinks.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24336, breakdown: OVERALL, shortlink: dach.hansen.com/commodi, stats: { base: { entries: [], destinations: [] } } }
properties:
data: { type: object, example: { id: 24336, breakdown: OVERALL, shortlink: dach.hansen.com/commodi, stats: { base: { entries: [], destinations: [] } } } }
tags:
- Stats
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
breakdown:
type: string
description: 'The value must be one of OVERALL, DAILY, or HOURLY.'
example: OVERALL
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
'/api/shortlinks/{shortlink}/stats':
get:
summary: 'Shortlink statistics'
description: 'Show all available statistics for shortlink.'
parameters:
-
in: query
name: with_shared_users
description: 'You can show stats per shared user'
example: false
required: false
schema:
type: boolean
description: 'You can show stats per shared user'
example: false
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24337, breakdown: OVERALL, shortlink: dibbert.com/reiciendis, stats: { base: { entries: [], destinations: [] } } }
properties:
data: { type: object, example: { id: 24337, breakdown: OVERALL, shortlink: dibbert.com/reiciendis, stats: { base: { entries: [], destinations: [] } } } }
tags:
- Stats
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
breakdown:
type: string
description: 'The value must be one of OVERALL, DAILY, or HOURLY.'
example: OVERALL
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
'/wl/shortlinks/{shortlink}/stats':
get:
summary: 'Shortlink statistics'
description: 'Show all available statistics for shortlink.'
parameters:
-
in: query
name: with_shared_users
description: 'You can show stats per shared user'
example: true
required: false
schema:
type: boolean
description: 'You can show stats per shared user'
example: true
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data: { id: 24339, breakdown: OVERALL, shortlink: stamm.com/qui, stats: { base: { entries: [], destinations: [] } } }
properties:
data: { type: object, example: { id: 24339, breakdown: OVERALL, shortlink: stamm.com/qui, stats: { base: { entries: [], destinations: [] } } } }
tags:
- Stats
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
breakdown:
type: string
description: 'The value must be one of OVERALL, DAILY, or HOURLY.'
example: HOURLY
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
/api/shortlinks/stats/list:
get:
summary: 'Get all shortlinks'
description: 'Each field is available as a filter.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
start_date:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
end_date:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:58+0000'
/wl/workspace/top-sources:
get:
summary: 'Top Sources'
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
scope:
type: string
description: 'The value must be one of workspace.'
example: workspace
workspace_id:
type: string
description: ''
example: { }
workspaces:
type: array
description: ''
example: [occaecati]
items: { type: string }
required:
- startDate
- endDate
/wl/workspace/top-links:
get:
summary: 'Top links'
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
scope:
type: string
description: 'The value must be one of workspace.'
example: workspace
workspace_id:
type: string
description: ''
example: { }
workspaces:
type: array
description: ''
example: [occaecati]
items: { type: string }
required:
- startDate
- endDate
/wl/workspace/top-people:
get:
summary: 'Top People'
description: 'Endpoint supports M2M authentication.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
scope:
type: string
description: 'The value must be one of workspace.'
example: workspace
workspace_id:
type: string
description: ''
example: { }
workspaces:
type: array
description: ''
example: [dolorum]
items: { type: string }
required:
- startDate
- endDate
/wl/workspace/top-stats:
get:
summary: 'Top Stats'
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
scope:
type: string
description: 'The value must be one of workspace.'
example: workspace
required:
- startDate
- endDate
/wl/workspace/graph:
get:
summary: 'Graph data'
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses:
401:
description: ''
content:
application/json:
schema:
type: object
example:
message: Unauthenticated.
properties:
message: { type: string, example: Unauthenticated. }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
startDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
endDate:
type: string
description: 'The value must be a valid date.'
example: '2024-05-20T15:24:59+0000'
scope:
type: string
description: 'The value must be one of workspace.'
example: workspace
required:
- startDate
- endDate
/wl/shortlinks/upsert:
post:
summary: ''
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
alias:
type: string
description: ''
example: voluptates
default_destination_url:
type: string
description: ''
example: provident
shortlink_id:
type: string
description: ''
example: { }
message:
type: string
description: ''
example: rerum
required:
- alias
'/wl/shortlinks/{shortlink}/ogtags/sync':
post:
summary: ''
description: ''
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
parameters:
-
in: path
name: shortlink
description: ''
example: omnis
required: true
schema:
type: string
'/wl/shortlinks/{shortlink}/share':
post:
summary: 'Share shortlink'
description: 'Share shortlink for another users.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
users:
type: optional
description: 'array (Required without all param) List of objects user_id and workspace_id'
example: aspernatur
all:
type: optional
description: '(Required without all users) Flag to use all users from workspace.'
example: et
sync:
type: boolean
description: ''
example: false
delete:
summary: 'Stop sharing shortlink'
description: 'Removes all shared users.'
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
parameters:
-
in: path
name: shortlink
description: 'Existing Shortlink Id.'
example: '1'
required: true
schema:
type: string
/wl/shortlinks/delete:
delete:
summary: 'Delete many shortlinks'
description: "You can delete many existing shortlink. This action can not be undone!\nShortlink statistics will not be accessible from API."
parameters:
-
in: header
name: Authorization
description: ''
example: 'Bearer {YOUR_AUTH_KEY}'
schema:
type: string
-
in: header
name: Content-Type
description: ''
example: application/json
schema:
type: string
-
in: header
name: Accept
description: ''
example: application/json
schema:
type: string
responses: { }
tags:
- Winlocal
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
ids:
type: array
description: ''
example: [31999.35, !!float 43328]
items: { type: number }
parameters:
-
in: path
name: array
description: 'Optional parameter.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: dolor
components:
securitySchemes:
default:
type: http
scheme: bearer
description: ''
security:
-
default: []