Stripe.API behaviour (stripity_stripe v2.17.3) View Source
Low-level utilities for interacting with the Stripe API.
Usually the utilities in Stripe.Request
are a better way to write custom interactions with
the API.
Link to this section Summary
Functions
Returns backoff in milliseconds.
A low level utility function to generate a new idempotency key for
Idempotency-Key
request header value.
In config.exs your implicit or explicit configuration is: config :stripity_stripe,
A low level utility function to make an OAuth request to the Stripe API
A low level utility function to make a direct request to the Stripe API
A low level utility function to make a direct request to the files Stripe API
Checks if an error is a problem that we should retry on. This includes both socket errors that may represent an intermittent problem and some special HTTP statuses.
Link to this section Types
Specs
Specs
Specs
method() :: :get | :post | :put | :delete | :patch
Link to this section Callbacks
Specs
Link to this section Functions
Specs
backoff(attempts :: non_neg_integer(), config :: Keyword.t()) :: non_neg_integer()
Returns backoff in milliseconds.
Specs
generate_idempotency_key() :: binary()
A low level utility function to generate a new idempotency key for
Idempotency-Key
request header value.
Specs
json_library() :: module()
In config.exs your implicit or explicit configuration is: config :stripity_stripe,
json_library: Poison # defaults to Jason but can be configured to Poison
A low level utility function to make an OAuth request to the Stripe API
Specs
request(map(), method(), String.t(), headers(), list()) :: {:ok, map()} | {:error, Stripe.Error.t()}
A low level utility function to make a direct request to the Stripe API
Setting the api key
request(%{}, :get, "/customers", %{}, api_key: "bogus key")
Setting api version
The api version defaults to 2020-08-27 but a custom version can be passed in as follows:
request(%{}, :get, "/customers", %{}, api_version: "2018-11-04")
Connect Accounts
If you'd like to make a request on behalf of another Stripe account utilizing the Connect program, you can pass the other Stripe account's ID to the request function as follows:
request(%{}, :get, "/customers", %{}, connect_account: "acc_134151")
Specs
request_file_upload(map(), method(), String.t(), headers(), list()) :: {:ok, map()} | {:error, Stripe.Error.t()}
A low level utility function to make a direct request to the files Stripe API
Specs
should_retry?( http_success() | http_failure(), attempts :: non_neg_integer(), config :: Keyword.t() ) :: boolean()
Checks if an error is a problem that we should retry on. This includes both socket errors that may represent an intermittent problem and some special HTTP statuses.