Class: MethodRuby::Resources::Entities

Inherits:
Object
  • Object
show all
Defined in:
lib/method_ruby/resources/entities.rb

Overview

Entities represent your application’s end-users. An Entity is the legal holder of an Account and can be either an individual or a corporation.

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Entities

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Entities.

Parameters:

API:

  • private



136
137
138
# File 'lib/method_ruby/resources/entities.rb', line 136

def initialize(client:)
  @client = client
end

Instance Method Details

#create(body:, idempotency_key: nil, method_version: nil, request_options: {}) ⇒ MethodRuby::Models::EntityCreateResponse

Creates a new Entity.

Parameters:

  • Body param

  • Header param: Unique key to ensure idempotent requests.

  • Header param: API version to use for this request.

Returns:

See Also:



23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/method_ruby/resources/entities.rb', line 23

def create(params)
  parsed, options = MethodRuby::EntityCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "entities",
    headers: parsed.except(:body).transform_keys(
      idempotency_key: "idempotency-key",
      method_version: "method-version"
    ),
    body: parsed[:body],
    model: MethodRuby::Models::EntityCreateResponse,
    options: options
  )
end

#list(from_date: nil, page: nil, page_cursor: nil, page_limit: nil, to_date: nil, method_version: nil, request_options: {}) ⇒ MethodRuby::Models::EntityListResponse

Returns all entities associated with your team.

Parameters:

  • Query param

  • Query param

  • Query param

  • Query param

  • Query param

  • Header param: API version to use for this request.

Returns:

See Also:



119
120
121
122
123
124
125
126
127
128
129
130
131
# File 'lib/method_ruby/resources/entities.rb', line 119

def list(params = {})
  query_params = [:from_date, :page, :page_cursor, :page_limit, :to_date]
  parsed, options = MethodRuby::EntityListParams.dump_request(params)
  query = MethodRuby::Internal::Util.encode_query_params(parsed.slice(*query_params))
  @client.request(
    method: :get,
    path: "entities",
    query: query,
    headers: parsed.except(*query_params).transform_keys(method_version: "method-version"),
    model: MethodRuby::Models::EntityListResponse,
    options: options
  )
end

#retrieve(ent_id, method_version: nil, request_options: {}) ⇒ MethodRuby::Models::EntityRetrieveResponse

Returns the Entity associated with the ID.

Parameters:

  • Entity identifier

  • API version to use for this request.

Returns:

See Also:



51
52
53
54
55
56
57
58
59
60
# File 'lib/method_ruby/resources/entities.rb', line 51

def retrieve(ent_id, params = {})
  parsed, options = MethodRuby::EntityRetrieveParams.dump_request(params)
  @client.request(
    method: :get,
    path: ["entities/%1$s", ent_id],
    headers: parsed.transform_keys(method_version: "method-version"),
    model: MethodRuby::Models::EntityRetrieveResponse,
    options: options
  )
end

#update(ent_id, address: nil, corporation: nil, individual: nil, metadata: nil, idempotency_key: nil, method_version: nil, request_options: {}) ⇒ MethodRuby::Models::EntityUpdateResponse

Updates an Entity with the provided data.

Parameters:

  • Path param: Entity identifier

  • Body param

  • Body param

  • Body param

  • Body param: Custom metadata associated with the resource

  • Header param: Unique key to ensure idempotent requests.

  • Header param: API version to use for this request.

Returns:

See Also:



85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/method_ruby/resources/entities.rb', line 85

def update(ent_id, params = {})
  parsed, options = MethodRuby::EntityUpdateParams.dump_request(params)
  header_params = {idempotency_key: "idempotency-key", method_version: "method-version"}
  @client.request(
    method: :put,
    path: ["entities/%1$s", ent_id],
    headers: parsed.slice(*header_params.keys).transform_keys(header_params),
    body: parsed.except(*header_params.keys),
    model: MethodRuby::Models::EntityUpdateResponse,
    options: options
  )
end