Flipper Cloud

HTTP adapter

HTTP adapter for use with the Flipper Api.

Given you have mounted the Flipper Api on an application, you can use the HTTP adapter to interact with Flipper just like any other adapter, and internally it will handle all the http requests for you. This means that you can have the application exposing the API store your Flipper data, but interact with it from other Ruby apps.

Initialize the HTTP adapter with a configuration Hash.

require 'flipper/adapters/http'

Flipper.configure do |config|
  config.adapter do
      url: 'http://app.com/mount-point', # required
      headers: { 'X-Custom-Header' => 'foo' },
      basic_auth_username: 'user123',
      basic_auth_password: 'password123'
      read_timeout: 5,
      open_timeout: 2,

Required keys:

Optional keys:
These will affect every request the adapter makes. For example, send basic auth credentials with every request.

  • headers: HTTP headers.
  • basic_auth_username: Basic Auth username.
  • basic_auth_password: Basic Auth password.
  • read_timeout: number in seconds.
  • open_timeout: number in seconds.
  • debug_output: Set an output stream for debugging (e.g. debug_output: $stderr). The output stream is passed on to Net::HTTP#set_debug_output.
Start flipping features with Flipper Cloud to get support, audit history, finer-grained permissions, multi-environment sync, and all of your projects in one place.

Prefer our open source Cloudless option? You can also choose from several tiers to sponsor Flipper on GitHub.