
    Sjm                         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y)   )
HttpClienthandle_response_error)ConcurrencyCheckCreditUsageQueueStatusResponse
TokenUsageCreditUsageHistoricalResponseTokenUsageHistoricalResponseclientreturnc           	      f   | j                  d      }|j                  st        |d       |j                         }|j                  d      st	        |j                  dd            |j                  d|      }t        |j                  d      |j                  d|j                  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       M/root/.hermes/venv/lib/python3.12/site-packages/firecrawl/v2/methods/usage.pyget_concurrencyr      s    ::-.D77d$5699;D88I/:;;88FD!DHH]+!1488<M3NO     c                    | j                  d      }|j                  st        |d       |j                         }|j                  d      st	        |j                  dd            |j                  d|      }t        |j                  d|j                  dd	            |j                  d
|j                  d            |j                  d|j                  d            |j                  d|j                  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77d$6799;D88I/:;;88FD!D((#5txx@SUV7WXXXmTXXn-EF!XX&:DHHE[<\]88$6AU8VW	 r   c                    | j                  d      }|j                  st        |d       |j                         }|j                  d      st	        |j                  dd            |j                  d|      }t        |j                  d|j                  dd	            |j                  d
|j                  d            |j                  d|j                  d            |j                  d|j                  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77d$5699;D88I/:;;88FD!D"3TXX>PRS5TUHH\488M+BC!XX&:DHHE[<\]88$6AU8VW	 r   c           
         | j                  d      }|j                  st        |d       |j                         }|j                  d      st	        |j                  dd            |j                  d|      }t        |j                  dd      |j                  d	d      |j                  d
d      |j                  dd      |j                  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77d$6799;D88I/:;;88FD!Dhh}a0!XX&91="hh';Q?!115 HH%8$? r   
by_api_keyc                     | j                  d|rdnd       }|j                  st        |d       |j                         }|j                  d      st	        |j                  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   sl    ::8Z9I]_8`abD77d$AB99;D88I/:;;(0400r   c                     | j                  d|rdnd       }|j                  st        |d       |j                         }|j                  d      st	        |j                  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   sl    ::7J8H\^7_`aD77d$@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      s    5 P  PJ +; Z K  J : Z ,? "1
 1 1Qn 10z 0t 0Pl 0r   