Customer lifecycle operations.
Summary
Types
Parameters for customers_create. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerCreateParams.
Parameters for customers_list. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerListParams.
Parameters for customers_update. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerUpdateParams.
Functions
Calls Dodo operation customers_create (POST /customers). Required parameters: :email, :name.
Calls Dodo operation customers_create (POST /customers). Required parameters: :email, :name.
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Calls Dodo operation customers_retrieve (GET /customers/{customer_id}). Required parameters: none.
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Types
@type create_params() :: %{ :email => String.t(), :name => String.t(), optional(:metadata) => DodoPayments.RequestTypes.flat_metadata(), optional(:phone_number) => String.t(), optional(String.t()) => DodoPayments.RequestTypes.input_value() } | DodoPayments.RequestTypes.compatibility_params()
Parameters for customers_create. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerCreateParams.
@type list_params() :: %{ optional(:page_number) => number(), optional(:page_size) => number(), optional(:created_at_gte) => String.t(), optional(:created_at_lte) => String.t(), optional(:email) => String.t(), optional(:name) => String.t(), optional(String.t()) => DodoPayments.RequestTypes.input_value() } | DodoPayments.RequestTypes.compatibility_params()
Parameters for customers_list. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerListParams.
@type update_params() :: %{ optional(:email) => String.t(), optional(:metadata) => DodoPayments.RequestTypes.flat_metadata(), optional(:name) => String.t(), optional(:phone_number) => String.t(), optional(String.t()) => DodoPayments.RequestTypes.input_value() } | DodoPayments.RequestTypes.compatibility_params()
Parameters for customers_update. Exact fields use atom keys; string-keyed and mixed-key maps remain supported. Source: locked upstream resources/customers/customers.ts declaration CustomerUpdateParams.
Functions
@spec create(DodoPayments.Client.t(), create_params()) :: {:ok, DodoPayments.Customer.t()} | {:error, Exception.t()}
Calls Dodo operation customers_create (POST /customers). Required parameters: :email, :name.
API parameters must be supplied as a map.
@spec create(DodoPayments.Client.t(), create_params(), keyword()) :: {:ok, DodoPayments.Customer.t() | DodoPayments.Response.t(DodoPayments.Customer.t())} | {:error, Exception.t()}
Calls Dodo operation customers_create (POST /customers). Required parameters: :email, :name.
The final argument contains request-local options.
@spec list(DodoPayments.Client.t()) :: {:ok, DodoPayments.Page.Numbered.t(DodoPayments.Customer.t())} | {:error, Exception.t()}
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Calls the operation with an empty parameter map.
@spec list(DodoPayments.Client.t(), list_params() | nil | keyword()) :: {:ok, DodoPayments.Page.Numbered.t(DodoPayments.Customer.t()) | DodoPayments.Response.t( DodoPayments.Page.Numbered.t(DodoPayments.Customer.t()) )} | {:error, Exception.t()}
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Pass a map for Dodo parameters or a keyword list for request-local options.
@spec list(DodoPayments.Client.t(), list_params() | nil, keyword()) :: {:ok, DodoPayments.Page.Numbered.t(DodoPayments.Customer.t()) | DodoPayments.Response.t( DodoPayments.Page.Numbered.t(DodoPayments.Customer.t()) )} | {:error, Exception.t()}
Calls Dodo operation customers_list (GET /customers). Required parameters: none. Numbered pagination is zero-based.
Accepts both a Dodo parameter map and request-local options.
@spec retrieve(DodoPayments.Client.t(), String.t() | integer(), keyword()) :: {:ok, DodoPayments.Customer.t() | DodoPayments.Response.t(DodoPayments.Customer.t())} | {:error, Exception.t()}
Calls Dodo operation customers_retrieve (GET /customers/{customer_id}). Required parameters: none.
Options are request-local.
@spec update(DodoPayments.Client.t(), String.t() | integer()) :: {:ok, DodoPayments.Customer.t()} | {:error, Exception.t()}
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Calls the operation with an empty parameter map.
@spec update( DodoPayments.Client.t(), String.t() | integer(), update_params() | nil | keyword() ) :: {:ok, DodoPayments.Customer.t() | DodoPayments.Response.t(DodoPayments.Customer.t())} | {:error, Exception.t()}
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Pass a map for Dodo parameters or a keyword list for request-local options.
@spec update( DodoPayments.Client.t(), String.t() | integer(), update_params() | nil, keyword() ) :: {:ok, DodoPayments.Customer.t() | DodoPayments.Response.t(DodoPayments.Customer.t())} | {:error, Exception.t()}
Calls Dodo operation customers_update (PATCH /customers/{customer_id}). Required parameters: none.
Accepts both a Dodo parameter map and request-local options.