
    tni              	           d Z ddlZddlZddlmZmZmZ ddlZddlm	Z	 ddl
mZ dZddedee         d	eeef         fd
ZdS )z 
Runpod | API Wrapper | GraphQL
    N)AnyDictOptional)error)
USER_AGENTi  queryapi_keyreturnc                    ddl m} |p|}|st          j        d          t          j                            dd          }| d}dt          d| d	}t          j	        d
| i          }t          j        |||d          }|j        t          k    rt          j        d          d|                                v r9t          j        |                                d         d         d         |           |                                S )z
    Run a GraphQL query with optional API key override.
    
    Args:
        query: The GraphQL query to execute.
        api_key: Optional API key to use for this query.
    r   )r	   zNo API key providedRUNPOD_API_BASE_URLzhttps://api.runpod.ioz/graphqlzapplication/jsonzBearer )zContent-Typez
User-AgentAuthorizationr      )headersdatatimeoutz0Unauthorized request, please check your API key.errorsmessage)runpodr	   r   AuthenticationErrorosenvirongetr   jsondumpsrequestspoststatus_codeHTTP_STATUS_UNAUTHORIZED
QueryError)	r   r	   global_api_keyeffective_api_keyapi_url_baseurlr   r   responses	            O/var/www/html/gpu-tools/venv/lib/python3.11/site-packages/runpod/api/graphql.pyrun_graphql_queryr&      s$    100000  1> ?'(=>>>:>>"79PQQL
#
#
#C + 6#466 G :w&''D}S'bIIIH777'>
 
 	
 8==??""x}}x8;IFNNN==??    )N)__doc__r   r   typingr   r   r   r   r   r   runpod.user_agentr   r   strr&    r'   r%   <module>r-      s      				 & & & & & & & & & &        ( ( ( ( ( ( $ $S $8C= $DcN $ $ $ $ $ $r'   