Sha256: db3a6dc922eb3b541ba13bd69208b5b474d506a82e10844b22a0ba6ac95621c3
Contents?: true
Size: 1.85 KB
Versions: 4
Compression:
Stored size: 1.85 KB
Contents
module FDIC module BankFind class Client include HTTParty base_uri 'https://odata.fdic.gov/v1/financial-institution/' format :json #logger ::Logger.new 'httparty.log', :debug, :curl #debug_output def find_bank(bank_name) self.class.get('/Bank', query: { '$inlinecount' => 'all', '$format' => 'json', '$filter' => "(substringof('#{escape_single_quotes(bank_name.upcase)}',name))"}) end def find_institution(certificate_number) self.class.get('/Institution', query: { '$inlinecount' => 'all', '$format' => 'json', '$filter' => "certNumber eq #{certificate_number}"}) end def find_branches(certificate_number) self.class.get('/Branch', query: { '$inlinecount' => 'allpages', '$format' => 'json', '$filter' => "certNumber eq #{certificate_number}"}) end def find_history_events(bank_name, certificate_number) filter = "legalName eq '#{escape_single_quotes(bank_name.upcase)}' and certNumber eq #{certificate_number}" self.class.get('/History', query: { '$inlinecount' => 'all', '$format' => 'json', '$filter' => filter}) end private def escape_single_quotes(string) # Urm? The API 500's if you have a single-quote in name: "People's United Bank." # Their web forms double-up the single-quotes to escape them. # NB: let's keep an eye on this flim-flam, and be sure it doesn't get out of hand. string.gsub("'", "''") end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
fdic-0.7.0 | lib/fdic/bank_find/client.rb |
fdic-0.6.0 | lib/fdic/bank_find/client.rb |
fdic-0.5.0 | lib/fdic/bank_find/client.rb |
fdic-0.4.0 | lib/fdic/client.rb |