
    Sj|                         d dl mZ d dl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)   )AsyncHttpClient)handle_response_error)ConcurrencyCheckCreditUsage
TokenUsageCreditUsageHistoricalResponseTokenUsageHistoricalResponseQueueStatusResponseclientreturnc           	        K   | j                  d       d {   }|j                  dk\  rt        |d       |j                         }|j                  d      st	        |j                  dd            |j                  d|      }t        |j                  d      |j                  d	|j                  d
                  S 7 w)Nz/v2/concurrency-check  zget concurrencysuccesserrorUnknown errordataconcurrencymaxConcurrencymax_concurrency)r   r   )getstatus_coder   json	Exceptionr   r   respbodyr   s       Q/root/.hermes/venv/lib/python3.12/site-packages/firecrawl/v2/methods/aio/usage.pyget_concurrencyr      s     344D3d$5699;D88I/:;;88FD!DHH]+!1488<M3NO  5s   CC B)Cc                 *  K   | j                  d       d {   }|j                  dk\  r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 7 w)Nz/v2/team/credit-usager   z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     344D3d$6799;D88I/:;;88FD!D((#5txx@SUV7WXXXmTXXn-EF!XX&:DHHE[<\]88$6AU8VW	  5   DDC:Dc                 *  K   | j                  d       d {   }|j                  dk\  r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 7 w)Nz/v2/team/token-usager   z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_usager0   $   s     233D3d$5699;D88I/:;;88FD!D"3TXX>PRS5TUHH\488M+BC!XX&:DHHE[<\]88$6AU8VW	  4r*   c           
        K   | j                  d       d {   }|j                  dk\  r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 7 ͭw)Nz/v2/team/queue-statusr   z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_statusr:   4   s     344D3d$6799;D88I/:;;88FD!Dhh}a0!XX&91="hh';Q?!115 HH%8$?  5s   C'C%CC'
by_api_keyc                   K   |rdnd}| j                  d|        d {   }|j                  dk\  rt        |d       |j                         }|j                  d      st	        |j                  dd            t        d	i |S 7 fw)
N?byApiKey=true z /v2/team/credit-usage/historicalr   zget credit usage historicalr   r   r    )r   r   r   r   r   r   r   r;   queryr   r   s        r   get_credit_usage_historicalrB   E   s      *E>ugFGGD3d$AB99;D88I/:;;(0400 H   B	BA'B	c                   K   |rdnd}| j                  d|        d {   }|j                  dk\  rt        |d       |j                         }|j                  d      st	        |j                  dd            t        d	i |S 7 fw)
Nr=   r>   z/v2/team/token-usage/historicalr   zget token usage historicalr   r   r   r?   )r   r   r   r   r   r	   r@   s        r   get_token_usage_historicalrE   P   s      *E=eWEFFD3d$@A99;D88I/:;;'/$// GrC   N)F)utils.http_client_asyncr   utils.error_handlerr   typesr   r   r   r   r	   r
   r   r)   r0   r:   boolrB   rE   r?       r   <module>rK      s    6 8 Q  Q/ 6F ? {  / j  ? 7J "1o 14 1\y 10_ 0$ 0[w 0rJ   