
    Jio                       d dl Z d dlZd dlmZ ddlmZ ddlmZm	Z	 ddl
mZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z' 	 d dl(Z(e(jR                  jU                  d      re+d dl,m-Z(  e j\                  e j^                  d      Z0 G d d      Z1 G d d      Z2y# e+$ r d dl(Z(Y =w xY w)    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)jsonable_encoder)remove_none_from_dict)UnprocessableEntityError)FailPageMode)HttpValidationError)!LlamaParseSupportedFileExtensions)ParserLanguages)ParsingHistoryItem)
ParsingJob)ParsingJobJsonResult)ParsingJobMarkdownResult)ParsingJobStructuredResult)ParsingJobTextResult)ParsingMode)PresignedUrlz1..c                   2   e Zd ZdefdZdej                  e   fdZde	de
fdZde	dej                  fdZde	dej                  fdZde	d	e	defd
Zde	de	ddfdZddde	dej$                  e	   defdZddde	dej$                  e	   defdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZddde	dej$                  e	   defdZddde	dej$                  e	   de fdZ!de	dej                  fdZ"dde#e#ddej$                  e	   dej$                  e	   de$dej$                  e	   d e	d!e	d"e	d#e	d$e$d%e%d&e%d'ej$                  e&   d(e	d)e	d*e	d+e	d,e	de
f$d-Z'dej                  e(   fd.Z)dde#e#e#e#d/dej$                  e	   dej$                  e	   d0e$d1e$d2e$d3e$d4e	d5e$d6e	d7e$d8e	d9e	d:e	d;e	d<e	d=e%d>e%d?e%d@e%dAe	dBe$dCe	dDe	dEe$dFe$dGe$dHe$de$dIe$dJe$dKe$dLe$dMe$dej$                  e	   dNe	dOe	dPe$dQe$dRe$dSe$dTe$dUe$dVe$dWe$d e	dXe$dYe$d!e	d"e	d#e	d$e$dZe$d%e%d&e%d[e$d\ej                  e*   d]e$d^e$d_e	d'ej$                  e&   d`e$dae	dbe$dce$d(e	d)e	dde$dee%dfe	dge	dhe	die	dje	dke	dle	dmej$                  e+   dne	doe$dpe$dqe$dre$dse$dte	due$dvej$                  e,   dwe	dxe	dye$dze$d{e$d|e$d}e$d~e$de$de$de$de$de$de$de$de	de	de	de	de$d*e	de	de$de	de	de	de	d+e	d,e	de
fdZ-y)ParsingClientclient_wrapperc                    || _         y N_client_wrapperselfr   s     v/var/www/html/BankruptcyAI-uat/bankruptcy-ai/venv/lib/python3.12/site-packages/llama_cloud/resources/parsing/client.py__init__zParsingClient.__init__&   
    -    returnc                    | j                   j                  j                  dt        j                  j                  | j                   j                          dd      | j                   j                         d      }d|j                  cxk  rdk  r<n n9t        j                  t        j                  t           |j                               S |j                  dk(  r1t        t        j                  t         |j                                     	 |j                         }t%        |j                  |	      # t"        $ r" t%        |j                  |j&                  	      w xY w)
a^  
        Get parsing history for user

        This endpoint is deprecated.
        Use /api/v1/jobs/?job_name=parsing&project_id=YOUR_PROJECT_ID instead.

        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_parsing_history_result()
        GET/api/v1/parsing/history<   headerstimeout   ,    status_codebodyr   httpx_clientrequesturllibparseurljoinget_base_urlget_headersr1   pydanticparse_obj_astypingListr   jsonr
   r   r   r   textr   	_response_response_jsons      r    get_parsing_history_resultz(ParsingClient.get_parsing_history_result)   s$    ((55==LL  D$8$8$E$E$G#H!JLde((446	 > 
	 )''-#-((5G)H)..JZ[[  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   D4 4+Ejob_idc                    | j                   j                  j                  dt        j                  j                  | j                   j                          dd|       | j                   j                         d      }d|j                  cxk  rdk  r+n n(t        j                  t        |j                               S |j                  dk(  r1t        t        j                  t        |j                                     	 |j                         }t!        |j                  |	      # t        $ r" t!        |j                  |j"                  	      w xY w)
a  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job(
            job_id="string",
        )
        r&   r'   api/v1/parsing/job/r)   r*   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   r   rE   rB   rC   s       r    get_jobzParsingClient.get_jobH   s#     ((55==LL  D$8$8$E$E$G#H!JNabhaiLjk((446	 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   ?D& &+Ec           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a.  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_parsing_job_details(
            job_id="string",
        )
        r&   r'   rG   /detailsr)   r*   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r:   r1   r;   r<   r=   Anyr?   r
   r   r   r   r@   rI   s       r    get_parsing_job_detailsz%ParsingClient.get_parsing_job_detailsh   s*     ((55==LL  D$8$8$E$E$G#H!JNabhaiiqLrs((446	 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	S   
D1 1+Ec           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a)  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_parameters(
            job_id="string",
        )
        r&   r'   rG   /parametersr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_parametersz ParsingClient.get_job_parameters   *     ((55==LL  D$8$8$E$E$G#H!JNabhaiitLuv((446	 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   filenamec           
         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d|       | j                   j                         d      }d|j                  cxk  rdk  r+n n(t        j                  t        |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t!        |j                  |
      # t        $ r" t!        |j                  |j"                  
      w xY w)a}  
        Generate a presigned URL for a job

        Parameters:
            - job_id: str.

            - filename: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.generate_presigned_url(
            job_id="string",
            filename="string",
        )
        r&   r'   rG   /read/r)   r*   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   r   rE   rU   rB   rC   s        r    generate_presigned_urlz$ParsingClient.generate_presigned_url   s1   & ((55==LL  ''4467q9=PQWPXX^_g^h;i ((446 > 
	 )''-#-((y~~7GHH  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   D) )+EnameNc           
      \   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d|       | j                   j                         d      }d|j                  cxk  rdk  ry	 |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t        |j                  |      # t        $ r" t        |j                  |j                         w xY w)a`  
        Get a job by id

        Parameters:
            - job_id: str.

            - name: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_image_result(
            job_id="string",
            name="string",
        )
        r&   r'   rG   /result/image/r)   r*   r-   r.   Nr/   r0   r   r4   r5   r6   r7   r8   r9   r:   r1   r
   r;   r<   r   r?   r   r   r@   r   rE   r[   rB   rC   s        r    get_job_image_resultz"ParsingClient.get_job_image_result   s   & ((55==LL  ''4467q9=PQWPXXfgkfl;m ((446 > 
	 )''-#- .  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   D   +D+organization_idrb   c          	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d      }d|j                  cxk  rd	k  r+n n(t        j                  t        |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      # t         $ r" t#        |j                  |j$                        w xY w)a  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_json_result(
            job_id="string",
        )
        r&   r'   rG   /result/jsonrb   r)   paramsr+   r,   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r	   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   r   rE   rb   rB   rC   s        r    get_job_json_resultz!ParsingClient.get_job_json_result   5   * ((55==LL  D$8$8$E$E$G#H!JNabhaiiuLvw(*;_)MN((446 > 
	 )''-#-(()=y~~?OPP  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	S   D3 3+Ec          	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d      }d|j                  cxk  rd	k  r+n n(t        j                  t        |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      # t         $ r" t#        |j                  |j$                        w xY w)a  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_result(
            job_id="string",
        )
        r&   r'   rG   /result/markdownrb   r)   re   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r	   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   rh   s        r    get_job_resultzParsingClient.get_job_result  s:   * ((55==LL  ''4467q9=PQWPXXh;i )*;_)MN((446 > 
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Srk   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a.  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_text_result(
            job_id="string",
        )
        r&   r'   rG   /result/pdfr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_text_resultz%ParsingClient.get_job_raw_text_result@  rT   rP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a.  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_json_raw_result(
            job_id="string",
        )
        r&   r'   rG   /result/raw/jsonr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_json_raw_resultz%ParsingClient.get_job_json_raw_result`  /     ((55==LL  ''4467q9=PQWPXXh;i ((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a,  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_md_result(
            job_id="string",
        )
        r&   r'   rG   /result/raw/markdownr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_md_resultz#ParsingClient.get_job_raw_md_result  s/     ((55==LL  ''4467q9=PQWPXXl;m ((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a6  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_text_result_raw_pdf(
            job_id="string",
        )
        r&   r'   rG   /result/raw/pdfr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_text_result_raw_pdfz-ParsingClient.get_job_raw_text_result_raw_pdf  s/     ((55==LL  ''4467q9=PQWPXXg;h ((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a4  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_structured_result(
            job_id="string",
        )
        r&   r'   rG   /result/raw/structuredr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_structured_resultz+ParsingClient.get_job_raw_structured_result  s/     ((55==LL  ''4467q9=PQWPXXn;o ((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a2  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_text_result_raw(
            job_id="string",
        )
        r&   r'   rG   /result/raw/textr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_text_result_rawz)ParsingClient.get_job_raw_text_result_raw  rv   rP   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a2  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_xlsx_result_raw(
            job_id="string",
        )
        r&   r'   rG   /result/raw/xlsxr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_xlsx_result_rawz)ParsingClient.get_job_raw_xlsx_result_raw
  rv   rP   c          	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d      }d|j                  cxk  rd	k  r+n n(t        j                  t        |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      # t         $ r" t#        |j                  |j$                        w xY w)a   
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_structured_result(
            job_id="string",
        )
        r&   r'   rG   /result/structuredrb   r)   re   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r	   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   rh   s        r    get_job_structured_resultz'ParsingClient.get_job_structured_result,  s:   . ((55==LL  ''4467q9=PQWPXXj;k )*;_)MN((446 > 
	 )''-#-(()CY^^EUVV  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Srk   c          	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d      }d|j                  cxk  rd	k  r+n n(t        j                  t        |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      # t         $ r" t#        |j                  |j$                        w xY w)a  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_text_result(
            job_id="string",
        )
        r&   r'   rG   /result/textrb   r)   re   r-   r.   r/   r0   r   r4   r5   r6   r7   r8   r9   r	   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   rh   s        r    get_job_text_resultz!ParsingClient.get_job_text_resultV  rj   rk   c           	         | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d      }d|j                  cxk  rdk  r5n n2t        j                  t        j                  |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |
      # t         $ r" t#        |j                  |j$                  
      w xY w)a.  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_job_raw_xlsx_result(
            job_id="string",
        )
        r&   r'   rG   /result/xlsxr)   r*   r-   r.   r/   r0   rM   rI   s       r    get_job_raw_xlsx_resultz%ParsingClient.get_job_raw_xlsx_result|  s*     ((55==LL  D$8$8$E$E$G#H!JNabhaiiuLvw((446	 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	SrP   rb   
project_idfile	max_pagesr   do_not_cacher   
http_proxyinput_s_3_pathinput_s_3_region	input_urlinvalidate_cache*job_timeout_extra_time_per_page_in_secondsjob_timeout_in_secondsr   output_s_3_path_prefixoutput_s_3_regiontarget_pageswebhook_configurationswebhook_urlc                $   ||||||	|
||||||d}|t         ur||d<   |t         ur||d<   | j                  j                  j                  dt        j
                  j                  | j                  j                          dd      t        ||d      t        |      | j                  j                         d	      }d
|j                  cxk  rdk  r+n n(t        j                  t        |j                               S |j                  dk(  r1t!        t        j                  t"        |j                                     	 |j                         }t'        |j                  |      # t$        $ r" t'        |j                  |j(                        w xY w)  
        Parameters:
            - organization_id: typing.Optional[str].

            - project_id: typing.Optional[str].

            - do_not_cache: bool.

            - file: typing.Optional[str].

            - http_proxy: str.

            - input_s_3_path: str.

            - input_s_3_region: str.

            - input_url: str.

            - invalidate_cache: bool.

            - job_timeout_extra_time_per_page_in_seconds: float.

            - job_timeout_in_seconds: float.

            - max_pages: typing.Optional[int].

            - output_s_3_path_prefix: str.

            - output_s_3_region: str.

            - target_pages: str.

            - webhook_configurations: str.

            - webhook_url: str.
        r   r   input_s3_pathinput_s3_regionr   r   r   r   output_s3_path_prefixoutput_s3_regionr   r   r   r   r   POSTr'   api/v1/parsing/screenshotrb   r   r)   rf   r?   r+   r,   r-   r.   r/   r0   OMITr   r4   r5   r6   r7   r8   r9   r	   r   r:   r1   r;   r<   r   r?   r
   r   r   r   r@   r   rb   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   _requestrB   rC   s                        r    
screenshotzParsingClient.screenshot  s   t )$+/" 0:d&<%; 1(&<&2
 t#HVD $-H[!((55==LL  D$8$8$E$E$G#H!JLgh(_\f)gh!(+((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   =E$ $+Fc                 D   | j                   j                  j                  dt        j                  j                  | j                   j                          dd      | j                   j                         d      }d|j                  cxk  rdk  r<n n9t        j                  t        j                  t           |j                               S 	 |j                         }t!        |j                  |      # t        $ r" t!        |j                  |j"                        w xY w)	z
        Get a list of supported file extensions

        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.parsing.get_supported_file_extensions()
        r&   r'   (api/v1/parsing/supported_file_extensionsr)   r*   r-   r.   r0   r   r4   r5   r6   r7   r8   r9   r:   r1   r;   r<   r=   r>   r   r?   r   r   r@   rA   s      r    get_supported_file_extensionsz+ParsingClient.get_supported_file_extensions  s     ((55==LL  D$8$8$E$E$G#H!JLvw((446	 > 
	 )''-#-((5V)WYbYgYgYijj	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   C4 4+Drb   r   r   r   
parse_modereplace_failed_page_modeadaptive_long_tableaggressive_table_extractionannotate_links	auto_modeauto_mode_configuration_json"auto_mode_trigger_on_image_in_page#auto_mode_trigger_on_regexp_in_page"auto_mode_trigger_on_table_in_page!auto_mode_trigger_on_text_in_pageazure_openai_api_versionazure_openai_deployment_nameazure_openai_endpointazure_openai_keybbox_bottom	bbox_left
bbox_rightbbox_topbounding_boxcompact_markdown_table#complemental_formatting_instructioncontent_guideline_instructioncontinuous_modedisable_image_extractiondisable_ocrdisable_reconstructiondo_not_unroll_columnsextract_chartsextract_layoutextract_printed_page_number	fast_modeformatting_instructiongpt_4_o_api_keygpt_4_o_modeguess_xlsx_sheet_namehide_footershide_headershigh_res_ocrhtml_make_all_elements_visiblehtml_remove_fixed_elementshtml_remove_navigation_elements-ignore_document_elements_for_layout_detectioninline_images_in_markdownis_formatting_instruction'keep_page_separator_when_merging_tableslanguagelayout_awareline_level_bounding_box)markdown_table_multiline_header_separator%merge_tables_across_pages_in_markdownmodeloutlined_table_extractionoutput_pdf_of_documentoutput_tables_as_htmlpage_error_tolerancepage_footer_prefixpage_footer_suffixpage_header_prefixpage_header_suffixpage_prefixpage_separatorpage_suffixr   parsing_instructionprecise_bounding_boxpremium_mode"presentation_out_of_bounds_content&preserve_layout_alignment_across_pagespreserve_very_small_textpresetremove_hidden_textr   -replace_failed_page_with_error_message_prefix-replace_failed_page_with_error_message_suffixsave_imagesskip_diagonal_text!specialized_chart_parsing_agentic#specialized_chart_parsing_efficientspecialized_chart_parsing_plusspecialized_image_parsingspreadsheet_extract_sub_tables%spreadsheet_force_formula_computationstrict_mode_buggy_fontstrict_mode_image_extractionstrict_mode_image_ocrstrict_mode_reconstructionstructured_outputstructured_output_json_schema"structured_output_json_schema_namesystem_promptsystem_prompt_appendtake_screenshottieruse_vendor_multimodal_modeluser_promptvendor_multimodal_api_keyvendor_multimodal_model_nameversionc       r   	         i d|d|d|d|d|d|d|	d|
d	|d
|d|d|d|d|d|d|d|i d|d|d|d|d|d|d|d|d|d|d|d|d| d|!d |#d!|$d"|%i d#|&d$|'d%|(d&|)d'|*d(|+d)|,d*|-d+|.d,|/d-|0d.|1d/|2d0|3d1|4d2|5d3|6i d4|7d5|8d6|9d7|:d8|;d9|=d:|>d;|?d<@d=Ad>Bd?Cd@DdAEdBFdCGdDHi dEIdFJdGKdHMdINdJOdKPdLQdMRdNSdOTdPVdQWdRXdSYdTZdU[i dV\dW]dX^dY_dZ`d[ad\bd]cd^dd_ed`fdagdbhdciddjdekdflmnopqrdg}s|"t         ur|"sdh<   |<t         ur|<sdi<   Lt         urLsdj<   Ut         urUsdk<   | j                  j                  j                  dlt        j
                  j                  | j                  j                          dmdn      t        ||do      t        s      | j                  j                         dpq      }tdr|tj                  cxk  rdsk  r+n n(t        j                  t        tj                               S tj                  dtk(  r1t!        t        j                  t"        tj                                     	 tj                         }ut'        tj                  uu      # t$        $ r" t'        tj                  |tj(                  u      w xY w)v  
        Parameters:
            - organization_id: typing.Optional[str].

            - project_id: typing.Optional[str].

            - adaptive_long_table: bool.

            - aggressive_table_extraction: bool.

            - annotate_links: bool.

            - auto_mode: bool.

            - auto_mode_configuration_json: str.

            - auto_mode_trigger_on_image_in_page: bool.

            - auto_mode_trigger_on_regexp_in_page: str.

            - auto_mode_trigger_on_table_in_page: bool.

            - auto_mode_trigger_on_text_in_page: str.

            - azure_openai_api_version: str.

            - azure_openai_deployment_name: str.

            - azure_openai_endpoint: str.

            - azure_openai_key: str.

            - bbox_bottom: float.

            - bbox_left: float.

            - bbox_right: float.

            - bbox_top: float.

            - bounding_box: str.

            - compact_markdown_table: bool.

            - complemental_formatting_instruction: str.

            - content_guideline_instruction: str.

            - continuous_mode: bool.

            - disable_image_extraction: bool.

            - disable_ocr: bool.

            - disable_reconstruction: bool.

            - do_not_cache: bool.

            - do_not_unroll_columns: bool.

            - extract_charts: bool.

            - extract_layout: bool.

            - extract_printed_page_number: bool.

            - fast_mode: bool.

            - file: typing.Optional[str].

            - formatting_instruction: str.

            - gpt_4_o_api_key: str.

            - gpt_4_o_mode: bool.

            - guess_xlsx_sheet_name: bool.

            - hide_footers: bool.

            - hide_headers: bool.

            - high_res_ocr: bool.

            - html_make_all_elements_visible: bool.

            - html_remove_fixed_elements: bool.

            - html_remove_navigation_elements: bool.

            - http_proxy: str.

            - ignore_document_elements_for_layout_detection: bool.

            - inline_images_in_markdown: bool.

            - input_s_3_path: str.

            - input_s_3_region: str.

            - input_url: str.

            - invalidate_cache: bool.

            - is_formatting_instruction: bool.

            - job_timeout_extra_time_per_page_in_seconds: float.

            - job_timeout_in_seconds: float.

            - keep_page_separator_when_merging_tables: bool.

            - language: typing.List[ParserLanguages].

            - layout_aware: bool.

            - line_level_bounding_box: bool.

            - markdown_table_multiline_header_separator: str.

            - max_pages: typing.Optional[int].

            - merge_tables_across_pages_in_markdown: bool.

            - model: str.

            - outlined_table_extraction: bool.

            - output_pdf_of_document: bool.

            - output_s_3_path_prefix: str.

            - output_s_3_region: str.

            - output_tables_as_html: bool.

            - page_error_tolerance: float.

            - page_footer_prefix: str.

            - page_footer_suffix: str.

            - page_header_prefix: str.

            - page_header_suffix: str.

            - page_prefix: str.

            - page_separator: str.

            - page_suffix: str.

            - parse_mode: typing.Optional[ParsingMode].

            - parsing_instruction: str.

            - precise_bounding_box: bool.

            - premium_mode: bool.

            - presentation_out_of_bounds_content: bool.

            - preserve_layout_alignment_across_pages: bool.

            - preserve_very_small_text: bool.

            - preset: str.

            - remove_hidden_text: bool.

            - replace_failed_page_mode: typing.Optional[FailPageMode].

            - replace_failed_page_with_error_message_prefix: str.

            - replace_failed_page_with_error_message_suffix: str.

            - save_images: bool.

            - skip_diagonal_text: bool.

            - specialized_chart_parsing_agentic: bool.

            - specialized_chart_parsing_efficient: bool.

            - specialized_chart_parsing_plus: bool.

            - specialized_image_parsing: bool.

            - spreadsheet_extract_sub_tables: bool.

            - spreadsheet_force_formula_computation: bool.

            - strict_mode_buggy_font: bool.

            - strict_mode_image_extraction: bool.

            - strict_mode_image_ocr: bool.

            - strict_mode_reconstruction: bool.

            - structured_output: bool.

            - structured_output_json_schema: str.

            - structured_output_json_schema_name: str.

            - system_prompt: str.

            - system_prompt_append: str.

            - take_screenshot: bool.

            - target_pages: str.

            - tier: str.

            - use_vendor_multimodal_model: bool.

            - user_prompt: str.

            - vendor_multimodal_api_key: str.

            - vendor_multimodal_model_name: str.

            - version: str.

            - webhook_configurations: str.

            - webhook_url: str.
        r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   gpt4o_api_key
gpt4o_moder   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   output_tables_as_HTMLr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r   r  r  r  r  r  r  r   r   r   r   r   r   r   r'   api/v1/parsing/uploadr   r)   r   r-   r.   r/   r0   r   vr   rb   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r   r  r  r  r  r  r  r   r   r   rB   rC   sv                                                                                                                         r    upload_filezParsingClient.upload_file  s   x
m2
!#6m2
)+Fm2
 nm2
 	m2

 +,Hm2
 12Tm2
 23Vm2
 12Tm2
 01Rm2
 '(@m2
 +,Hm2
 $%:m2
  0m2
 ;m2
 m2
  *!m2
" #m2
$ L%m2
& %&<'m2
( 23V)m2
* ,-J+m2
, -m2
. '(@/m2
0 ;1m2
2 %&<3m2
4 L5m2
6 $%:7m2
8 n9m2
: n;m2
< *+F=m2
> ?m2
@ %&<Am2
B _Cm2
D ,Em2
F $%:Gm2
H LIm2
J LKm2
L LMm2
N -.LOm2
P )*DQm2
R ./NSm2
T *Um2
V <=jWm2
X ()BYm2
Z ^[m2
\ /]m2
^ _m2
`  0am2
b ()Bcm2
d 9:dem2
f %&<gm2
h 67^im2
j km2
l Lmm2
n &'>om2
p 89bqm2
r 45Zsm2
t Uum2
v ()Bwm2
x %&<ym2
z $%;{m2
|  1}m2
~ $%:m2
@ #$8Am2
B !"4Cm2
D !"4Em2
F !"4Gm2
H !"4Im2
J ;Km2
L nMm2
N ;Om2
P "#6Qm2
R #$8Sm2
T LUm2
V 12TWm2
X 56\Ym2
Z '(@[m2
\ f]m2
^ !"4_m2
` <=jam2
b <=jcm2
d ;em2
f !"4gm2
h 01Rim2
j 23Vkm2
l -.Lmm2
n ()Bom2
p -.Lqm2
r 45Zsm2
t %&<um2
v +,Hwm2
x $%:ym2
z )*D{m2
|  !2}m2
~ ,-Jm2
@ 12TAm2
B ]Cm2
D #$8Em2
F Gm2
H LIm2
J DKm2
L *+FMm2
N ')B,H&<&Ym2
\ t#HVD $-H[!T!%/H\"#4/3KH/0((55==LL  D$8$8$E$E$G#H!JLcd(_\f)gh!(+((446 > 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN  	Sy'<'<9>>RR	Ss   J5 5+K ).__name__
__module____qualname__r   r!   r=   r>   r   rD   strr   rJ   rN   rO   rS   r   rZ   r`   Optionalr   ri   r   ro   rr   ru   ry   r|   r   r   r   r   r   r   r   r   r   boolfloatintr   r   r   r   r   r   r    r#   r    r   r   %   s	   .*; .OFKK8J,K O>Oc Oj O@Oc Ofjj O@O O O@#OS #OC #OL #OJ#O3 #Oc #Od #OJ [_ $O# $O6??SVCW $Ocw $OL VZ &OS &Ofooc>R &O^v &OPOc Ofjj O@ Oc  Ofjj  OD OC  OFJJ  OD Oc  Ofjj  OD OC  OFJJ  OD O#  O&**  OD O#  O&**  OF GK(O(O/5s/C(O	#(OT [_ $O# $O6??SVCW $Ocw $OLOc Ofjj OF 15+/%) +/\O  -\O OOC(	\O
 \O ooc"\O \O \O \O \O \O 5:\O !&\O ??3'\O !$\O  !\O" #\O$ !$%\O& '\O( 
)\O|Ov{{;\/] O: 15+/@ &*4 +/  48 CGobO  -bO OOC(	bO
 "bO &*bO bO bO '*bO -1bO .1bO -1bO ,/bO #&bO '*bO   #!bO" #bO$ %bO& 'bO( )bO* +bO, -bO. !%/bO0 .11bO2 (+3bO4 5bO6 #'7bO8 9bO: !%;bO< =bO>  $?bO@ AbOB CbOD &*EbOF GbOH ooc"IbOJ !$KbOL MbON ObOP  $QbOR SbOT UbOV WbOX )-YbOZ %)[bO\ *.]bO^ _bO` 8<abOb $(cbOd ebOf gbOh ibOj kbOl $(mbOn 5:obOp !&qbOr 26sbOt ++o.ubOv wbOx "&ybOz 47{bO| ??3'}bO~ 04bO@ AbOB $(CbOD !%EbOF !$GbOH IbOJ  $KbOL $MbON  ObOP  QbOR  SbOT  UbOV WbOX YbOZ [bO\ OOK0]bO^ !_bO` #abOb cbOd -1ebOf 15gbOh #'ibOj kbOl !mbOn #)//,"?obOp 8;qbOr 8;sbOt ubOv !wbOx ,0ybOz .2{bO| )-}bO~ $(bO@ )-AbOB 04CbOD !%EbOF '+GbOH  $IbOJ %)KbOL  MbON (+ObOP -0QbOR SbOT "UbOV WbOX YbOZ [bO\ &*]bO^ _bO` $'abOb '*cbOd ebOf !$gbOh ibOj 
kbOr#   r   c                   2   e Zd ZdefdZdej                  e   fdZde	de
fdZde	dej                  fdZde	dej                  fdZde	d	e	defd
Zde	de	ddfdZddde	dej$                  e	   defdZddde	dej$                  e	   defdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZde	dej                  fdZddde	dej$                  e	   defdZddde	dej$                  e	   de fdZ!de	dej                  fdZ"dde#e#ddej$                  e	   dej$                  e	   de$dej$                  e	   d e	d!e	d"e	d#e	d$e$d%e%d&e%d'ej$                  e&   d(e	d)e	d*e	d+e	d,e	de
f$d-Z'dej                  e(   fd.Z)dde#e#e#e#d/dej$                  e	   dej$                  e	   d0e$d1e$d2e$d3e$d4e	d5e$d6e	d7e$d8e	d9e	d:e	d;e	d<e	d=e%d>e%d?e%d@e%dAe	dBe$dCe	dDe	dEe$dFe$dGe$dHe$de$dIe$dJe$dKe$dLe$dMe$dej$                  e	   dNe	dOe	dPe$dQe$dRe$dSe$dTe$dUe$dVe$dWe$d e	dXe$dYe$d!e	d"e	d#e	d$e$dZe$d%e%d&e%d[e$d\ej                  e*   d]e$d^e$d_e	d'ej$                  e&   d`e$dae	dbe$dce$d(e	d)e	dde$dee%dfe	dge	dhe	die	dje	dke	dle	dmej$                  e+   dne	doe$dpe$dqe$dre$dse$dte	due$dvej$                  e,   dwe	dxe	dye$dze$d{e$d|e$d}e$d~e$de$de$de$de$de$de$de$de	de	de	de	de$d*e	de	de$de	de	de	de	d+e	d,e	de
fdZ-y)AsyncParsingClientr   c                    || _         y r   r   r   s     r    r!   zAsyncParsingClient.__init__  r"   r#   r$   c                   K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd      | j                   j                         d       d{   }d|j                  cxk  rdk  r<n n9t        j                  t        j                  t           |j                               S |j                  d	k(  r1t        t        j                  t         |j                                     	 |j                         }t%        |j                  |
      7 # t"        $ r" t%        |j                  |j&                  
      w xY ww)an  
        Get parsing history for user

        This endpoint is deprecated.
        Use /api/v1/jobs/?job_name=parsing&project_id=YOUR_PROJECT_ID instead.

        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_parsing_history_result()
        r&   r'   r(   r)   r*   Nr-   r.   r/   r0   r3   rA   s      r    rD   z-AsyncParsingClient.get_parsing_history_result  s2     ..;;CCLL  D$8$8$E$E$G#H!JLde((446	 D 
 
	 )''-#-((5G)H)..JZ[[  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   A>E. D>BE.E  'E. +E++E.rE   c                   K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd|       | j                   j                         d       d{   }d|j                  cxk  rdk  r+n n(t        j                  t        |j                               S |j                  d	k(  r1t        t        j                  t        |j                                     	 |j                         }t!        |j                  |
      7 # t        $ r" t!        |j                  |j"                  
      w xY ww)a.  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job(
            job_id="string",
        )
        r&   r'   rG   r)   r*   Nr-   r.   r/   r0   rH   rI   s       r    rJ   zAsyncParsingClient.get_job  s1      ..;;CCLL  D$8$8$E$E$G#H!JNabhaiLjk((446	 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   BE D0BE 	D2 E 2+EE c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a>  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_parsing_job_details(
            job_id="string",
        )
        r&   r'   rG   rL   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    rO   z*AsyncParsingClient.get_parsing_job_details<  s8      ..;;CCLL  D$8$8$E$E$G#H!JNabhaiiqLrs((446	 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	S+   BE+D;BE+D= $E+=+E((E+c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a9  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_parameters(
            job_id="string",
        )
        r&   r'   rG   rR   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    rS   z%AsyncParsingClient.get_job_parameters\  8      ..;;CCLL  D$8$8$E$E$G#H!JNabhaiitLuv((446	 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Sr0  rU   c           
        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d|       | j                   j                         d       d{   }d|j                  cxk  rd	k  r+n n(t        j                  t        |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t!        |j                  |      7 # t        $ r" t!        |j                  |j"                        w xY ww)a  
        Generate a presigned URL for a job

        Parameters:
            - job_id: str.

            - filename: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.generate_presigned_url(
            job_id="string",
            filename="string",
        )
        r&   r'   rG   rW   r)   r*   Nr-   r.   r/   r0   rX   rY   s        r    rZ   z)AsyncParsingClient.generate_presigned_url|  s?    & ..;;CCLL  ''4467q9=PQWPXX^_g^h;i ((446 D 
 
	 )''-#-((y~~7GHH  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Ss+   BE#D3BE#D5 E#5+E  E#r[   Nc           
      x  K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d|       | j                   j                         d       d{   }d|j                  cxk  rd	k  ry |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t        |j                  |      7 # t        $ r" t        |j                  |j                         w xY ww)ap  
        Get a job by id

        Parameters:
            - job_id: str.

            - name: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_image_result(
            job_id="string",
            name="string",
        )
        r&   r'   rG   r]   r)   r*   Nr-   r.   r/   r0   r^   r_   s        r    r`   z'AsyncParsingClient.get_job_image_result  s-    & ..;;CCLL  ''4467q9=PQWPXXfgkfl;m ((446 D 
 
	 )''-#- .  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Ss+   BD:D
AD:#D 3D:+D77D:ra   rb   c          	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d       d{   }d	|j                  cxk  rd
k  r+n n(t        j                  t        |j                               S |j                  dk(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a
  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_json_result(
            job_id="string",
        )
        r&   r'   rG   rd   rb   r)   re   Nr-   r.   r/   r0   rg   rh   s        r    ri   z&AsyncParsingClient.get_job_json_result  C    . ..;;CCLL  D$8$8$E$E$G#H!JNabhaiiuLvw(*;_)MN((446 D 
 
	 )''-#-(()=y~~?OPP  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	S+   BE-D=BE-D? &E-?+E**E-c          	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d       d{   }d	|j                  cxk  rd
k  r+n n(t        j                  t        |j                               S |j                  dk(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_result(
            job_id="string",
        )
        r&   r'   rG   rm   rb   r)   re   Nr-   r.   r/   r0   rn   rh   s        r    ro   z!AsyncParsingClient.get_job_result  sH    . ..;;CCLL  ''4467q9=PQWPXXh;i )*;_)MN((446 D 
 
	 )''-#-(()A9>>CSTT  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN#
  	Sy'<'<9>>RR	Sr7  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a>  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_text_result(
            job_id="string",
        )
        r&   r'   rG   rq   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    rr   z*AsyncParsingClient.get_job_raw_text_result  r2  r0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a>  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_json_raw_result(
            job_id="string",
        )
        r&   r'   rG   rt   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    ru   z*AsyncParsingClient.get_job_json_raw_result8  =      ..;;CCLL  ''4467q9=PQWPXXh;i ((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Sr0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a<  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_md_result(
            job_id="string",
        )
        r&   r'   rG   rx   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    ry   z(AsyncParsingClient.get_job_raw_md_resultZ  s=      ..;;CCLL  ''4467q9=PQWPXXl;m ((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Sr0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)aF  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_text_result_raw_pdf(
            job_id="string",
        )
        r&   r'   rG   r{   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    r|   z2AsyncParsingClient.get_job_raw_text_result_raw_pdf|  s=      ..;;CCLL  ''4467q9=PQWPXXg;h ((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Sr0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)aD  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_structured_result(
            job_id="string",
        )
        r&   r'   rG   r~   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    r   z0AsyncParsingClient.get_job_raw_structured_result  s=      ..;;CCLL  ''4467q9=PQWPXXn;o ((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Sr0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)aB  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_text_result_raw(
            job_id="string",
        )
        r&   r'   rG   r   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    r   z.AsyncParsingClient.get_job_raw_text_result_raw  r;  r0  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)aB  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_xlsx_result_raw(
            job_id="string",
        )
        r&   r'   rG   r   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    r   z.AsyncParsingClient.get_job_raw_xlsx_result_raw  r;  r0  c          	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d       d{   }d	|j                  cxk  rd
k  r+n n(t        j                  t        |j                               S |j                  dk(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_structured_result(
            job_id="string",
        )
        r&   r'   rG   r   rb   r)   re   Nr-   r.   r/   r0   r   rh   s        r    r   z,AsyncParsingClient.get_job_structured_result  sH    . ..;;CCLL  ''4467q9=PQWPXXj;k )*;_)MN((446 D 
 
	 )''-#-(()CY^^EUVV  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN#
  	Sy'<'<9>>RR	Sr7  c          	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      t        d|i      | j                   j                         d       d{   }d	|j                  cxk  rd
k  r+n n(t        j                  t        |j                               S |j                  dk(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a
  
        Get a job by id

        Note: The 'credits_used' and 'job_credits_usage' fields in the response metadata are deprecated
        and will be removed in a future release.

        Parameters:
            - job_id: str.

            - organization_id: typing.Optional[str].
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_text_result(
            job_id="string",
        )
        r&   r'   rG   r   rb   r)   re   Nr-   r.   r/   r0   r   rh   s        r    r   z&AsyncParsingClient.get_job_text_result.  r6  r7  c           	        K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd| d      | j                   j                         d       d{   }d|j                  cxk  rd	k  r5n n2t        j                  t        j                  |j                               S |j                  d
k(  r1t        t        j                  t        |j                                     	 |j                         }t#        |j                  |      7 # t         $ r" t#        |j                  |j$                        w xY ww)a>  
        Get a job by id

        Parameters:
            - job_id: str.
        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_job_raw_xlsx_result(
            job_id="string",
        )
        r&   r'   rG   r   r)   r*   Nr-   r.   r/   r0   rM   rI   s       r    r   z*AsyncParsingClient.get_job_raw_xlsx_resultV  s8      ..;;CCLL  D$8$8$E$E$G#H!JNabhaiiuLvw((446	 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Sr0  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   c                @  K   ||||||	|
||||||d}|t         ur||d<   |t         ur||d<   | j                  j                  j                  dt        j
                  j                  | j                  j                          dd      t        ||d      t        |      | j                  j                         d	       d
{   }d|j                  cxk  rdk  r+n n(t        j                  t        |j                               S |j                  dk(  r1t!        t        j                  t"        |j                                     	 |j                         }t'        |j                  |      7 # t$        $ r" t'        |j                  |j(                        w xY ww)r   r   r   r   r   r'   r   r   r)   r   Nr-   r.   r/   r0   r   r   s                        r    r   zAsyncParsingClient.screenshotv  s    t )$+/" 0:d&<%; 1(&<&2
 t#HVD $-H[!..;;CCLL  D$8$8$E$E$G#H!JLgh(_\f)gh!(+((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Ss+   B?FE.BFE0 F0+FFc                 `  K   | j                   j                  j                  dt        j                  j                  | j                   j                          dd      | j                   j                         d       d{   }d|j                  cxk  rdk  r<n n9t        j                  t        j                  t           |j                               S 	 |j                         }t!        |j                  |	      7 }# t        $ r" t!        |j                  |j"                  	      w xY ww)
a  
        Get a list of supported file extensions

        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.parsing.get_supported_file_extensions()
        r&   r'   r   r)   r*   Nr-   r.   r0   r   rA   s      r    r   z0AsyncParsingClient.get_supported_file_extensions  s     ..;;CCLL  D$8$8$E$E$G#H!JLvw((446	 D 
 
	 )''-#-((5V)WYbYgYgYijj	S&^^-N 9#8#8~NN
  	Sy'<'<9>>RR	Ss+   A>D. C>AD.D  'D. +D++D.r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  c       r   	        K   i d|d|d|d|d|d|d|	d|
d	|d
|d|d|d|d|d|d|d|i d|d|d|d|d|d|d|d|d|d|d|d|d| d|!d |#d!|$d"|%i d#|&d$|'d%|(d&|)d'|*d(|+d)|,d*|-d+|.d,|/d-|0d.|1d/|2d0|3d1|4d2|5d3|6i d4|7d5|8d6|9d7|:d8|;d9|=d:|>d;|?d<@d=Ad>Bd?Cd@DdAEdBFdCGdDHi dEIdFJdGKdHMdINdJOdKPdLQdMRdNSdOTdPVdQWdRXdSYdTZdU[i dV\dW]dX^dY_dZ`d[ad\bd]cd^dd_ed`fdagdbhdciddjdekdflmnopqrdg}s|"t         ur|"sdh<   |<t         ur|<sdi<   Lt         urLsdj<   Ut         urUsdk<   | j                  j                  j                  dlt        j
                  j                  | j                  j                          dmdn      t        ||do      t        s      | j                  j                         dpq       dr{   }tds|tj                  cxk  rdtk  r+n n(t        j                  t        tj                               S tj                  duk(  r1t!        t        j                  t"        tj                                     	 tj                         }ut'        tj                  uv      7 # t$        $ r" t'        tj                  |tj(                  v      w xY ww)wr  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r   r  r  r  r   r   r   r   r   r'   r  r   r)   r   Nr-   r.   r/   r0   r   r  sv                                                                                                                         r    r   zAsyncParsingClient.upload_file  s    x
m2
!#6m2
)+Fm2
 nm2
 	m2

 +,Hm2
 12Tm2
 23Vm2
 12Tm2
 01Rm2
 '(@m2
 +,Hm2
 $%:m2
  0m2
 ;m2
 m2
  *!m2
" #m2
$ L%m2
& %&<'m2
( 23V)m2
* ,-J+m2
, -m2
. '(@/m2
0 ;1m2
2 %&<3m2
4 L5m2
6 $%:7m2
8 n9m2
: n;m2
< *+F=m2
> ?m2
@ %&<Am2
B _Cm2
D ,Em2
F $%:Gm2
H LIm2
J LKm2
L LMm2
N -.LOm2
P )*DQm2
R ./NSm2
T *Um2
V <=jWm2
X ()BYm2
Z ^[m2
\ /]m2
^ _m2
`  0am2
b ()Bcm2
d 9:dem2
f %&<gm2
h 67^im2
j km2
l Lmm2
n &'>om2
p 89bqm2
r 45Zsm2
t Uum2
v ()Bwm2
x %&<ym2
z $%;{m2
|  1}m2
~ $%:m2
@ #$8Am2
B !"4Cm2
D !"4Em2
F !"4Gm2
H !"4Im2
J ;Km2
L nMm2
N ;Om2
P "#6Qm2
R #$8Sm2
T LUm2
V 12TWm2
X 56\Ym2
Z '(@[m2
\ f]m2
^ !"4_m2
` <=jam2
b <=jcm2
d ;em2
f !"4gm2
h 01Rim2
j 23Vkm2
l -.Lmm2
n ()Bom2
p -.Lqm2
r 45Zsm2
t %&<um2
v +,Hwm2
x $%:ym2
z )*D{m2
|  !2}m2
~ ,-Jm2
@ 12TAm2
B ]Cm2
D #$8Em2
F Gm2
H LIm2
J DKm2
L *+FMm2
N ')B,H&<&Ym2
\ t#HVD $-H[!T!%/H\"#4/3KH/0..;;CCLL  D$8$8$E$E$G#H!JLcd(_\f)gh!(+((446 D 
 
	 )''-#-((Y^^5EFF  C'*8+@+@ATV_VdVdVf+ghh	S&^^-N 9#8#8~NN!
  	Sy'<'<9>>RR	Ss+   HK/J?BK/K (K/+K,,K/).r!  r"  r#  r   r!   r=   r>   r   rD   r$  r   rJ   rN   rO   rS   r   rZ   r`   r%  r   ri   r   ro   rr   ru   ry   r|   r   r   r   r   r   r   r   r   r   r&  r'  r(  r   r   r   r   r   r   r   r)  r#   r    r+  r+    s	   .*< .O&++>P2Q O>OC OJ O@OC OFJJ O@Os Ovzz O@#O3 #O# #O, #OJ#O #OC #OD #OL GK&O&O/5s/C&O	&OR GK(O(O/5s/C(O	!(OTOC OFJJ O@ OC  OFJJ  OD O#  O&**  OD OC  OFJJ  OD O#  O&**  OD O  O

  OD O  O

  OF GK(O(O/5s/C(O	#(OV GK&O&O/5s/C&O	&OPOC OFJJ OF 15+/%) +/\O  -\O OOC(	\O
 \O ooc"\O \O \O \O \O \O 5:\O !&\O ??3'\O !$\O  !\O" #\O$ !$%\O& '\O( 
)\O|OV[[Ab5c O: 15+/@ &*4 +/  48 CGobO  -bO OOC(	bO
 "bO &*bO bO bO '*bO -1bO .1bO -1bO ,/bO #&bO '*bO   #!bO" #bO$ %bO& 'bO( )bO* +bO, -bO. !%/bO0 .11bO2 (+3bO4 5bO6 #'7bO8 9bO: !%;bO< =bO>  $?bO@ AbOB CbOD &*EbOF GbOH ooc"IbOJ !$KbOL MbON ObOP  $QbOR SbOT UbOV WbOX )-YbOZ %)[bO\ *.]bO^ _bO` 8<abOb $(cbOd ebOf gbOh ibOj kbOl $(mbOn 5:obOp !&qbOr 26sbOt ++o.ubOv wbOx "&ybOz 47{bO| ??3'}bO~ 04bO@ AbOB $(CbOD !%EbOF !$GbOH IbOJ  $KbOL $MbON  ObOP  QbOR  SbOT  UbOV WbOX YbOZ [bO\ OOK0]bO^ !_bO` #abOb cbOd -1ebOf 15gbOh #'ibOj kbOl !mbOn #)//,"?obOp 8;qbOr 8;sbOt ubOv !wbOx ,0ybOz .2{bO| )-}bO~ $(bO@ )-AbOB 04CbOD !%EbOF '+GbOH  $IbOJ %)KbOL  MbON (+ObOP -0QbOR SbOT "UbOV WbOX YbOZ [bO\ &*]bO^ _bO` $'abOb '*cbOd ebOf !$gbOh ibOj 
kbOr#   r+  )3r=   urllib.parser6   json.decoderr   core.api_errorr   core.client_wrapperr   r   core.jsonable_encoderr   core.remove_none_from_dictr	   !errors.unprocessable_entity_errorr
   types.fail_page_moder   types.http_validation_errorr   +types.llama_parse_supported_file_extensionsr   types.parser_languagesr   types.parsing_history_itemr   types.parsing_jobr   types.parsing_job_json_resultr   !types.parsing_job_markdown_resultr   #types.parsing_job_structured_resultr   types.parsing_job_text_resultr   types.parsing_moder   types.presigned_urlr   r;   __version__
startswithImportErrorpydantic.v1v1castrN   r   r   r+  r)  r#   r    <module>r`     s      ( & H 5 ? I 0 > \ 5 < + A I M A - /&&t,"
 v{{6::s#QO QOh&WO WOw&  s   8'C 	CC