Creating a new short link with a mobile targeting rule

This method creates a new short URL with a mobile targeting rule

The instruction below shows how to create a new short link with a rule for mobile targeting.

  • Click "Create API key".
  • Add a Secret key.

2) Iphone and Android URLs.

To create mobile targeting, you need to specify the URLs for iOS and Android.

3) Install prerequisites for requests.

pip install requests
npm install --save axios

Now everything is ready to run the following snippet. It will create a short URL with a mobile targeting rule.

4) Create a file: filename.py/ .js/ .rb. Use the code snippet below.

📘

Please, replace domain, original URL, iphoneURL and androidURL with appropriate values.

import requests

url = "https://api.short.io/links"

import json
payload = json.dumps({
      "iphoneURL":"https://apps.apple.com/us/app/google-sheets/id842849113",
      "androidURL":"https://play.google.com/store/apps/details?id=com.google.android.apps.docs.editors.sheets&hl=en",
      "domain":"yourshortdomain.com",
      "originalURL":"https://yourlongdomain.com/yourlonglink"})
headers = {
    'accept': "application/json",
    'content-type': "application/json",
    'authorization': "<<apiKey>>"
    }

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)
const axios = require('axios');

const data = {
  "allowDuplicates":false,
  "iphoneURL":"https://apps.apple.com/us/app/google-sheets/id842849113",
  "androidURL":"https://play.google.com/store/apps/details?id=com.google.android.apps.docs.editors.sheets&hl=en",
  "domain":"yourshortdomain.com",
  "originalURL":"https://yourlongdomain.com/yourlonglink"
};

const options = {
  headers: {
    accept: 'application/json',
    'content-type': 'application/json',
    authorization: '<<apiKey>>'
  }
};

axios.post('https://api.short.io/links', data, options)
.then(function (response) {
  console.log(response.data);
})
.catch(function (response) {
  console.log(response);
});
require 'uri'
require 'net/http'
require 'openssl'
require 'json'

url = URI("https://api.short.io/links")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["accept"] = 'application/json'
request["content-type"] = 'application/json'
request["authorization"] = '<<apiKey>>'
request.body = JSON.generate({"allowDuplicates":false,
"iphoneURL":"https://apps.apple.com/us/app/google-sheets/id842849113",
"androidURL":"https://play.google.com/store/apps/details?id=com.google.android.apps.docs.editors.sheets&hl=en",
"domain":"yourshortdomain.com",
"originalURL":"https://yourlongdomain.com/yourlonglink"})

response = http.request(request)
puts response.read_body

5) Launch the file.

python filename.py
node filename.js
ruby filename.rb

6) JSON Response (link with mobile targeting is created).

Once you run the code, you will see the response.

{
  id: 277740335,
  originalURL: 'https://yourlongdomain.com/yourlonglink',
  DomainId: 9026,
  archived: false,
  path: 'rx1jPX',
  redirectType: null,
  androidURL: 'https://play.google.com/store/apps/details?id=com.google.android.apps.docs.editors.sheets&hl=en',
  iphoneURL: 'https://apps.apple.com/us/app/google-sheets/id842849113',
  createdAt: '2020-04-20T08:48:04.878Z',
  OwnerId: 9346,
  updatedAt: '2020-04-20T08:48:04.878Z',
  secureShortURL: 'https://yourshortdomain.com/rx1jPX',
  shortURL: 'https://yourshortdomain.com/rx1jPX',
  duplicate: false
}