
    im                         d dl mZmZ d dlmZmZmZmZmZm	Z	 dedefdZ
dedefdZdedefdZdedefdZdded
edefdZdded
ede	fdZdS )   )
HttpClienthandle_response_error)ConcurrencyCheckCreditUsageQueueStatusResponse
TokenUsageCreditUsageHistoricalResponseTokenUsageHistoricalResponseclientreturnc           	         |                      d          }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    |                     d|          }t          |                     d          |                     d|                     d	                    
          S )Nz/v2/concurrency-checkzget concurrencysuccesserrorUnknown errordataconcurrencymaxConcurrencymax_concurrency)r   r   )getokr   json	Exceptionr   r   respbodyr   s       d/home/agentuser/.hermes/hermes-agent/venv/lib/python3.11/site-packages/firecrawl/v2/methods/usage.pyget_concurrencyr      s    ::-..D7 7d$566699;;D88I </::;;;88FD!!DHH]++!1488<M3N3NOO       c                 ~   |                      d          }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    |                     d|          }t          |                     d|                     dd	                    |                     d
|                     d                    |                     d|                     d                    |                     d|                     d                              S )Nz/v2/team/credit-usagezget credit usager   r   r   r   remainingCreditsremaining_credits    planCreditsplan_creditsbillingPeriodStartbilling_period_startbillingPeriodEndbilling_period_end)r!   r$   r&   r(   )r   r   r   r   r   r   r   s       r   get_credit_usager)      s   ::-..D7 8d$677799;;D88I </::;;;88FD!!D((#5txx@SUV7W7WXXXXmTXXn-E-EFF!XX&:DHHE[<\<\]]88$6AU8V8VWW	   r   c                 ~   |                      d          }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    |                     d|          }t          |                     d|                     dd	                    |                     d
|                     d                    |                     d|                     d                    |                     d|                     d                              S )Nz/v2/team/token-usagezget token usager   r   r   r   remainingTokensremaining_tokensr"   
planTokensplan_tokensr%   r&   r'   r(   )r,   r.   r&   r(   )r   r   r   r   r   r   r   s       r   get_token_usager/   #   s   ::,--D7 7d$566699;;D88I </::;;;88FD!!D"3TXX>PRS5T5TUUHH\488M+B+BCC!XX&:DHHE[<\<\]]88$6AU8V8VWW	   r   c           
         |                      d          }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    |                     d|          }t          |                     dd          |                     d	d          |                     d
d          |                     dd          |                     dd                     S )Nz/v2/team/queue-statuszget queue statusr   r   r   r   jobsInQueuer"   activeJobsInQueuewaitingJobsInQueuer   mostRecentSuccess)jobs_in_queueactive_jobs_in_queuewaiting_jobs_in_queuer   most_recent_success)r   r   r   r   r   r   r   s       r   get_queue_statusr9   2   s    ::-..D7 8d$677799;;D88I </::;;;88FD!!Dhh}a00!XX&91=="hh';Q??!1155 HH%8$??   r   F
by_api_keyc                    |                      d|rdnd           }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    t          di |S )	Nz /v2/team/credit-usage/historical?byApiKey=true zget credit usage historicalr   r   r    )r   r   r   r   r   r	   r   r:   r   r   s       r   get_credit_usage_historicalr@   C   s    ::aZ9_9I9I]_aabbD7 Cd$ABBB99;;D88I </::;;;(004000r   c                    |                      d|rdnd           }|j        st          |d           |                                }|                     d          s#t	          |                     dd                    t          di |S )	Nz/v2/team/token-usage/historicalr<   r=   zget token usage historicalr   r   r   r>   )r   r   r   r   r   r
   r?   s       r   get_token_usage_historicalrB   M   s    ::`J8^8H8H\^``aaD7 Bd$@AAA99;;D88I </::;;;'//$///r   N)F)utilsr   r   typesr   r   r   r   r	   r
   r   r)   r/   r9   boolr@   rB   r>   r   r   <module>rF      so   5 5 5 5 5 5 5 5 P  P  P  P  P  P  P  P  P  P  P  P  P  P  P  PJ +;    Z K     J :    Z ,?    "1 1
 1 1Qn 1 1 1 10 0z 0t 0Pl 0 0 0 0 0 0r   