external_service

Elixir library for safely using any external service or API using automatic retry with rate limiting and circuit breakers. Calls to external services can be synchronous, asynchronous background tasks, or multiple calls can be made in parallel for MapReduce style processing.

Third Party APIs

Stars

152

Unreleased Activity

First Release

9

years ago

Last Release

1

months ago

Downloads

25.4k

last 90 days

Last Stable Version

2.0.0

Version 2.0.0

Published Jun 2026
Elixir Version Requirement ~> 1.15
Documentation for 2.0.0

Dependencies

7
deep_merge ~> 1.0

Deep (recursive) merging for maps, keyword lists and whatever else you may want via implementing a simple protocol.

errata ~> 1.3

Elixir library for structured error handling

ex_rated ~> 2.1

ExRated, the OTP GenServer with the naughty name that allows you to rate-limit calls to any service that requires it. For example, rate-limit calls to your favorite API which requires no more than `limit` API calls within a `scale` milliseconds time window.

fuse ~> 2.5

A Circuit breaker implementation for Erlang

nimble_options ~> 1.1

A tiny library for validating and documenting high-level options

retry ~> 0.18

Simple Elixir macros for linear retry, exponential backoff and wait with composable delays.

telemetry ~> 1.0

Dynamic dispatching library for metrics and instrumentations

Community

Looks like this space is still empty… Want to be the first to contribute?

Share an article, talk, or podcast by adding resources to this package.

Related Packages

191 packages