Skip to content

Latest commit

 

History

History
221 lines (163 loc) · 13.9 KB

File metadata and controls

221 lines (163 loc) · 13.9 KB

Customers

Overview

Available Operations

  • list - Retrieve a list of customers
  • get - Retrieve a customer
  • delete - Delete a customer
  • update - Update a customer

list

Retrieve a list of customers for the authenticated workspace.

Example Usage

require 'dub'

Models = ::OpenApiSDK::Models
s = ::OpenApiSDK::Dub.new(
  security: Models::Shared::Security.new(
    token: 'DUB_API_KEY'
  )
)

req = Models::Operations::GetCustomersRequest.new(
  ending_before: 'cus_1KAP4CDPBSVMMBMH9XX3YZZ0Z',
  starting_after: 'cus_1KAP4CDPBSVMMBMH9XX3YZZ0Z',
  page: 1.0,
  page_size: 50.0
)
res = s.customers.list(request: req)

unless res.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::GetCustomersRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::GetCustomersResponse)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequest 400 application/json
Models::Errors::Unauthorized 401 application/json
Models::Errors::Forbidden 403 application/json
Models::Errors::NotFound 404 application/json
Models::Errors::Conflict 409 application/json
Models::Errors::InviteExpired 410 application/json
Models::Errors::UnprocessableEntity 422 application/json
Models::Errors::RateLimitExceeded 429 application/json
Models::Errors::InternalServerError 500 application/json
Errors::APIError 4XX, 5XX */*

get

Retrieve a customer by ID for the authenticated workspace.

Example Usage

require 'dub'

Models = ::OpenApiSDK::Models
s = ::OpenApiSDK::Dub.new(
  security: Models::Shared::Security.new(
    token: 'DUB_API_KEY'
  )
)

req = Models::Operations::GetCustomerRequest.new(
  id: '<id>'
)
res = s.customers.get(request: req)

unless res.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::GetCustomerRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::GetCustomerResponseBody)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequest 400 application/json
Models::Errors::Unauthorized 401 application/json
Models::Errors::Forbidden 403 application/json
Models::Errors::NotFound 404 application/json
Models::Errors::Conflict 409 application/json
Models::Errors::InviteExpired 410 application/json
Models::Errors::UnprocessableEntity 422 application/json
Models::Errors::RateLimitExceeded 429 application/json
Models::Errors::InternalServerError 500 application/json
Errors::APIError 4XX, 5XX */*

delete

Delete a customer from a workspace.

Example Usage

require 'dub'

Models = ::OpenApiSDK::Models
s = ::OpenApiSDK::Dub.new(
  security: Models::Shared::Security.new(
    token: 'DUB_API_KEY'
  )
)
res = s.customers.delete(id: '<id>')

unless res.nil?
  # handle response
end

Parameters

Parameter Type Required Description
id ::String ✔️ The unique ID of the customer. You may use either the customer's id on Dub (obtained via /customers endpoint) or their externalId (unique ID within your system, prefixed with ext_, e.g. ext_123).

Response

T.nilable(Models::Operations::DeleteCustomerResponseBody)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequest 400 application/json
Models::Errors::Unauthorized 401 application/json
Models::Errors::Forbidden 403 application/json
Models::Errors::NotFound 404 application/json
Models::Errors::Conflict 409 application/json
Models::Errors::InviteExpired 410 application/json
Models::Errors::UnprocessableEntity 422 application/json
Models::Errors::RateLimitExceeded 429 application/json
Models::Errors::InternalServerError 500 application/json
Errors::APIError 4XX, 5XX */*

update

Update a customer for the authenticated workspace.

Example Usage

require 'dub'

Models = ::OpenApiSDK::Models
s = ::OpenApiSDK::Dub.new(
  security: Models::Shared::Security.new(
    token: 'DUB_API_KEY'
  )
)

req = Models::Operations::UpdateCustomerRequest.new(
  id: '<id>'
)
res = s.customers.update(request: req)

unless res.nil?
  # handle response
end

Parameters

Parameter Type Required Description
request Models::Operations::UpdateCustomerRequest ✔️ The request object to use for the request.

Response

T.nilable(Models::Operations::UpdateCustomerResponseBody)

Errors

Error Type Status Code Content Type
Models::Errors::BadRequest 400 application/json
Models::Errors::Unauthorized 401 application/json
Models::Errors::Forbidden 403 application/json
Models::Errors::NotFound 404 application/json
Models::Errors::Conflict 409 application/json
Models::Errors::InviteExpired 410 application/json
Models::Errors::UnprocessableEntity 422 application/json
Models::Errors::RateLimitExceeded 429 application/json
Models::Errors::InternalServerError 500 application/json
Errors::APIError 4XX, 5XX */*