Link TTL support
Today we've released a new TTL parameter to link creation API. You can tell to remove the link after the specified date and time. After we delete this link, we also decrement your total link count. This way, you can clean your dashboard and decrease your bill.
We already have a link expiration feature, which helps our customers to create time-based marketing campaigns. Link expiration does not delete your link. Instead, it allows you to send your customers to the "Link expired page." Link expiration works immediately while deleting a link by TTL can be delayed by an hour or two
Link endpoints with old numeric identifiers require domain id parameter
We are working on improvements of our speed and fault-tolerance. In order to achieve that we need to make few changes in API. You can safely ignore this message if you use our new link identifiers only (they look like lnk_abc_abc123).
Starting from now you need to provide domain_id parameter in query string if you try to update or delete link by identifier.
DELETE /links/1234567890 => DELETE /links/1234567890?domain_id=12345
POST /links/1234567890 => POST /links/1234567890?domain_id=12345
DELETE /links/lnk_abc_abc123 => DELETE /links/lnk_abc_abc123 // no need to add domain id
Second factor via Windows Hello, Touch ID or USB tokens added
We recommend using second-factor authentication everywhere, including We added additional login verification via one-time codes a long time ago, but now we have more ways to protect your account. now supports almost every identity verification device: you can use Face ID, Touch ID, Windows Hello, or a USB token (like Yubikey) to protect your account. This feature is available for any plan, including free
Discontinuing affiliate program
You can ignore this message unless you promote as an affiliate.
During the last few years, we had an affiliate program powered by LinkMink service. It allowed our clients to create affiliate links and get a commission from the leads upgrading on
Starting from today, we chose to discontinue this program. There are a few reasons:
  • the result of affiliate program didn’t meet our expectations
  • it requires maintenance from our team
  • it includes a third-party javascript on our dashboard panel, and we are trying to reduce the number of external scripts on our pages
We'll pay commissions for existing leads but will stop tracking new subscriptions and accept new affiliate program applications
QR codes readability check
We added custom logo support for QR codes a long time ago, but a large logo could lead to unscannable QR. Currently, we try to scan QR with a logo and show a notice if the logo is too large
New CSV import
Previously, CSV import required you to keep the tab open till the import completes. It could be hours for some of our customers with millions of links. Now you can close your laptop and grab some coffee - our processing will continue, and we'll send you an email with a link list when we complete the import
Dark theme for our website
We added a dark theme for our dashboard a few months ago, but our main page did not have a dark theme till today. Now you can open our website anytime without being dazzled by the light of your laptop.
Added new payment methods
Now you can pay for using ACH direct debit and EU local internet bankings. We have no access to your bank accounts, all payments are managed by Stripe Inc
DDoS protection for all our customers
We have extended DDoS protection from our internal resources (like dashboard or API) to every branded domain connected to Using this protection, you will never lose clients because of organized crime.
This feature is available for every plan, customer, and link.
Additional validation for link creation API call
After thorough thinking, we've added additional checks to the POST API call. It is better to display errors to you during creation time than send your customers to a broken link. Some common use cases, which will raise an error starting from today:
Sending "allowDuplicates" parameter as a string
This parameter must be a boolean value (true or false).
  • Old behavior: non-empty string ("True", "TRUE" or "False") was converted to true, an empty string to false
  • New behavior: Returning 400 error with an error message
Sending empty originalURL (null or empty string)
  • Old behavior: link with empty destination was created
  • New behavior: Returning 400 error with an error message
Sending definitely invalid originalURL
- Old behavior: link with a broken destination was created (https:///?identifier=5, <@123131>, " sample search")
  • New behavior: Returning 400 error with an error message
Sending "tags" parameter as a string instead of an array
  • Old behavior: we created a tag per letter in the string ("example" produced "a", "e", "m", "l", "p" and "x" tags)
  • New behavior: Returning 400 error with an error message
Sending array instead of a string in utmMedium parameter
  • Old behavior: we created a link with a parameter utmMedium of ["value"]
  • New behavior: Returning 400 error with an error message
, please use "idString" field as a link identifier, "id" field is deprecated (but still supported)
Load More