mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-26 00:29:40 +02:00
Synth error handling
This commit is contained in:
parent
955f211fe0
commit
fd6a0a12b4
4 changed files with 45 additions and 5 deletions
5
app/models/issue/synth_limit_exceeded.rb
Normal file
5
app/models/issue/synth_limit_exceeded.rb
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
class Issue::SynthLimitExceeded < Issue
|
||||||
|
def title
|
||||||
|
"Synth API Credit Limit Exceeded"
|
||||||
|
end
|
||||||
|
end
|
|
@ -194,11 +194,18 @@ class Provider::Synth
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_error(response)
|
def build_error(response)
|
||||||
Provider::Base::ProviderError.new(<<~ERROR)
|
if response.status == 402
|
||||||
Failed to fetch data from #{self.class}
|
Provider::Base::ProviderError.new(<<~ERROR)
|
||||||
Status: #{response.status}
|
Your Synth API credit limit has been exceeded
|
||||||
Body: #{response.body.inspect}
|
Please visit your Synth billing settings to upgrade your plan or wait for your credits to reset.
|
||||||
ERROR
|
ERROR
|
||||||
|
else
|
||||||
|
Provider::Base::ProviderError.new(<<~ERROR)
|
||||||
|
Failed to fetch data from #{self.class}
|
||||||
|
Status: #{response.status}
|
||||||
|
Body: #{response.body.inspect}
|
||||||
|
ERROR
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def fetch_page(url, page, params = {})
|
def fetch_page(url, page, params = {})
|
||||||
|
|
13
app/views/issue/_synth_limit_exceeded.html.erb
Normal file
13
app/views/issue/_synth_limit_exceeded.html.erb
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<div class="space-y-4">
|
||||||
|
<p>Your Synth API credit limit has been exceeded.</p>
|
||||||
|
|
||||||
|
<p>You can:</p>
|
||||||
|
<ul class="list-disc pl-4 space-y-2">
|
||||||
|
<li>Wait for your API credits to reset at the start of your next billing cycle or upgrade your Synth plan</li>
|
||||||
|
<li>
|
||||||
|
<%= link_to "View your current usage and upgrade your plan",
|
||||||
|
"https://dashboard.synthfinance.com/settings",
|
||||||
|
class: "text-blue-500 hover:text-blue-700" %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
15
app/views/issue/synth_limit_exceededs/show.html.erb
Normal file
15
app/views/issue/synth_limit_exceededs/show.html.erb
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
<%= content_for :title, @issue.title %>
|
||||||
|
|
||||||
|
<%= content_for :description do %>
|
||||||
|
<%= render "issue/synth_limit_exceeded" %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<%= content_for :action do %>
|
||||||
|
<div class="space-y-4">
|
||||||
|
<% if self_hosted? %>
|
||||||
|
<%= link_to "View Usage & Upgrade", "https://dashboard.synthfinance.com/settings", class: "btn btn--primary" %>
|
||||||
|
<% else %>
|
||||||
|
<p>Please contact the Maybe team for assistance.</p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
Loading…
Add table
Add a link
Reference in a new issue