Class: GoCardlessPro::Services::InstitutionsService

Inherits:
BaseService
  • Object
show all
Defined in:
lib/gocardless_pro/services/institutions_service.rb

Overview

Service for making requests to the Institution endpoints

Instance Method Summary collapse

Methods inherited from BaseService

#initialize, #make_request, #sub_url

Constructor Details

This class inherits a constructor from GoCardlessPro::Services::BaseService

Instance Method Details

#all(options = {}) ⇒ Object

Get a lazily enumerated list of all the items returned. This is similar to the ‘list` method but will paginate for you automatically.

Otherwise they will be the body of the request.

Parameters:

  • options (Hash) (defaults to: {})

    parameters as a hash. If the request is a GET, these will be converted to query parameters.



34
35
36
37
38
39
# File 'lib/gocardless_pro/services/institutions_service.rb', line 34

def all(options = {})
  Paginator.new(
    service: self,
    options: options
  ).enumerator
end

#list(options = {}) ⇒ Object

Returns a list of supported institutions. Example URL: /institutions

Parameters:

  • options (Hash) (defaults to: {})

    parameters as a hash, under a params key.



16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/gocardless_pro/services/institutions_service.rb', line 16

def list(options = {})
  path = '/institutions'

  options[:retry_failures] = true

  response = make_request(:get, path, options)

  ListResponse.new(
    response: response,
    unenveloped_body: unenvelope_body(response.body),
    resource_class: Resources::Institution
  )
end

#list_for_billing_request(identity, options = {}) ⇒ Object

Returns all institutions valid for a Billing Request.

This endpoint is currently supported only for FasterPayments. Example URL: /billing_requests/:identity/institutions

Parameters:

  • identity

    # Unique identifier, beginning with “BRQ”.

  • options (Hash) (defaults to: {})

    parameters as a hash, under a params key.



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/gocardless_pro/services/institutions_service.rb', line 48

def list_for_billing_request(identity, options = {})
  path = sub_url('/billing_requests/:identity/institutions', {
                   'identity' => identity
                 })

  options[:retry_failures] = false

  response = make_request(:get, path, options)

  ListResponse.new(
    response: response,
    unenveloped_body: unenvelope_body(response.body),
    resource_class: Resources::Institution
  )
end