Class: ModernTreasury::RoutingDetailController

Inherits:
BaseController show all
Defined in:
lib/modern_treasury/controllers/routing_detail_controller.rb

Overview

RoutingDetailController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseController

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters

Constructor Details

This class inherits a constructor from ModernTreasury::BaseController

Instance Method Details

#create_routing_detail(accounts_type, account_id, idempotency_key: nil, body: nil) ⇒ ApiResponse

Create a routing detail for a single external account. something unique, preferably something like an UUID. description here

Parameters:

  • accounts_type (AccountsType1)

    Required parameter: Example:

  • account_id (String)

    Required parameter: The ID of the account.

  • idempotency_key (String) (defaults to: nil)

    Optional parameter: This key should be

  • body (RoutingDetailCreateRequest) (defaults to: nil)

    Optional parameter: TODO: type

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/modern_treasury/controllers/routing_detail_controller.rb', line 51

def create_routing_detail(accounts_type,
                          ,
                          idempotency_key: nil,
                          body: nil)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/api/{accounts_type}/{account_id}/routing_details',
                                 Server::DEFAULT)
               .template_param(new_parameter(accounts_type, key: 'accounts_type')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(, key: 'account_id')
                                .is_required(true)
                                .should_encode(true))
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
               .body_param(new_parameter(body))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(Single.new('basic_auth')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(RoutingDetail.method(:from_hash))
                .is_api_response(true)
                .local_error('404',
                             'unsuccessful',
                             ErrorMessageException)
                .local_error('422',
                             'unsuccessful',
                             ErrorMessageException))
    .execute
end

#delete_routing_detail(accounts_type, account_id, id) ⇒ ApiResponse

Delete a routing detail for a single external account.

Parameters:

  • accounts_type (AccountsType1)

    Required parameter: Example:

  • account_id (String)

    Required parameter: The ID of the account.

  • id (String)

    Required parameter: The ID of the routing detail.

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/modern_treasury/controllers/routing_detail_controller.rb', line 122

def delete_routing_detail(accounts_type,
                          ,
                          id)
  @api_call
    .request(new_request_builder(HttpMethodEnum::DELETE,
                                 '/api/{accounts_type}/{account_id}/routing_details/{id}',
                                 Server::DEFAULT)
               .template_param(new_parameter(accounts_type, key: 'accounts_type')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(, key: 'account_id')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(id, key: 'id')
                                .is_required(true)
                                .should_encode(true))
               .auth(Single.new('basic_auth')))
    .response(new_response_handler
                .is_response_void(true)
                .is_api_response(true))
    .execute
end

#get_routing_detail(accounts_type, account_id, id) ⇒ ApiResponse

Get a single routing detail for a single internal or external account.

Parameters:

  • accounts_type (AccountsType)

    Required parameter: Example:

  • account_id (String)

    Required parameter: The ID of the account.

  • id (String)

    Required parameter: The ID of the routing detail.

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/modern_treasury/controllers/routing_detail_controller.rb', line 89

def get_routing_detail(accounts_type,
                       ,
                       id)
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/api/{accounts_type}/{account_id}/routing_details/{id}',
                                 Server::DEFAULT)
               .template_param(new_parameter(accounts_type, key: 'accounts_type')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(, key: 'account_id')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(id, key: 'id')
                                .is_required(true)
                                .should_encode(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .auth(Single.new('basic_auth')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(RoutingDetail.method(:from_hash))
                .is_api_response(true)
                .local_error('404',
                             'not found',
                             ErrorMessageException))
    .execute
end

#list_routing_details(accounts_type, account_id, after_cursor: nil, per_page: nil) ⇒ ApiResponse

Get a list of routing details for a single internal or external account. here here

Parameters:

  • accounts_type (AccountsType)

    Required parameter: Example:

  • account_id (String)

    Required parameter: The ID of the account.

  • after_cursor (String) (defaults to: nil)

    Optional parameter: TODO: type description

  • per_page (Integer) (defaults to: nil)

    Optional parameter: TODO: type description

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/modern_treasury/controllers/routing_detail_controller.rb', line 17

def list_routing_details(accounts_type,
                         ,
                         after_cursor: nil,
                         per_page: nil)
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/api/{accounts_type}/{account_id}/routing_details',
                                 Server::DEFAULT)
               .template_param(new_parameter(accounts_type, key: 'accounts_type')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(, key: 'account_id')
                                .is_required(true)
                                .should_encode(true))
               .query_param(new_parameter(after_cursor, key: 'after_cursor'))
               .query_param(new_parameter(per_page, key: 'per_page'))
               .header_param(new_parameter('application/json', key: 'accept'))
               .auth(Single.new('basic_auth')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(RoutingDetail.method(:from_hash))
                .is_api_response(true)
                .is_response_array(true))
    .execute
end