/exbitly

An Elixir library to interact with the Bitly API.

Primary LanguageElixirMIT LicenseMIT

Exbitly

Hex.pm Hex.pm Downloads

An Elixir library to interact with the Bitly API.

Installation

To use Exbitly, you first have to add it to your mix.exs dependencies.

defp deps do
  [
    {:exbitly, "~> 0.1.0"}
  ]
end

After that, you have to create a config folder and a config.exs file inside that folder. Then, pass the code below inside the config.exs file and add your token in it.

import Config

config :exbitly,
  token: ""

Without the config.exs file, you won't be able to shorten URLs.

Usage

You can use shorten/2 to shorten a URL.

Exbitly.shorten("bit.ly", "https://www.example.com")
# {:ok, "http://bit.ly/short_url"}

Exbitly.shorten("random", "https://www.example.com")
# {:error, %{
#   "description" => "The value provided is invalid.",
#   "errors" => [%{"error_code" => "invalid", "field" => "domain"}],
#   "message" => "INVALID_ARG_DOMAIN",
#   "resource" => "bitlinks"
# }}

If you prefer exceptions, you can always use shorten!/2 instead of shorten/2.

Exbitly.shorten!("bit.ly", "https://www.example.com")
# {:ok, "http://bit.ly/short_url"}

Exbitly.shorten!("random", "https://www.example.com")
# ** (Exbitly.Error) An error occured while shortening the URL. Message: INVALID_ARG_DOMAIN - Description: The value provided is invalid.

License

Copyright (c) 2022-present Alim Arslan Kaya.

Exbitly is licensed under the MIT license.