Module: MangoApi::UriProvider
- Included in:
- BankAccounts, BankingAliases, Cards, ClientWallets, Clients, DisputeDocuments, Disputes, EMoney, Events, Hooks, KycDocuments, Mandates, OAuthTokens, PayIns, PayOuts, PreAuthorizations, Refunds, Reports, Repudiations, Responses, SettlementTransfers, Transactions, Transfers, UboDeclarations, Users, Wallets
- Defined in:
- lib/mangopay/api/uri_provider.rb
Overview
Provides full contextual URL details for API calls.
Instance Method Summary collapse
-
#provide_uri(api_method_symbol, *_params) ⇒ URI
Returns the URI for a given API endpoint.
Instance Method Details
#provide_uri(api_method_symbol, *_params) ⇒ URI
Returns the URI for a given API endpoint. Calls ‘eval` on the declared API method string if the URL contains parameter placeholders, replacing them with data as passed into the method with the two ’param’ params.
as specified in ApiMethods
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/mangopay/api/uri_provider.rb', line 18 def provide_uri(api_method_symbol, *_params) _, unparsed = ApiMethods[api_method_symbol] raise("No method declared for key :#{api_method_symbol}") unless unparsed parsed_path = unparsed.include?('%') ? eval(unparsed) : unparsed config = MangoPay.configuration full_url = [config.root_url, config.api_version, config.client_id, parsed_path] .join('/') URI(full_url) end |