Skip to main content

Cliente Python para la API de Tokenix - Autenticación y comunicación HTTP completa

Project description

Tokenix API Client

Cliente Python para la API de Tokenix - Autenticación y comunicación HTTP completa.

Instalación

pip install tokenix-api-client

Dependencias

El paquete requiere las siguientes dependencias (se instalan automáticamente):

  • requests>=2.25.0 - Para peticiones HTTP
  • python-dotenv>=0.19.0 - Para variables de entorno (opcional)

Uso

Importar el cliente

from auth_component import create_auth_client

Obtener accessToken

# Crear cliente
auth_client = create_auth_client()

# Obtener accessToken
access_token = auth_client.get_access_token(
    api_key="tu-api-key",
    email_auth="email-para-primer-endpoint",
    password_auth="password-para-primer-endpoint", 
    email_user="email-para-segundo-endpoint",
    password_user="password-para-segundo-endpoint"
)

Realizar peticiones autenticadas

# Realizar petición HTTP autenticada
response = auth_client.make_request(
    method="GET",  # o "POST", "PUT", "DELETE"
    endpoint="/v2/user/profile",
    api_key="tu-api-key",
    email_auth="email-para-primer-endpoint",
    password_auth="password-para-primer-endpoint",
    email_user="email-para-segundo-endpoint", 
    password_user="password-para-segundo-endpoint",
    data={"key": "value"},  # opcional para POST/PUT
    params={"param": "value"}  # opcional para query parameters
)

Uso con context manager

with create_auth_client() as auth_client:
    access_token = auth_client.get_access_token(**credentials)
    response = auth_client.make_request("GET", "/v2/endpoint", **credentials)

Variables de Entrada

Variable Descripción Ejemplo
api_key Clave API de Tokenix "xxx-xxx-xxxx"
email_auth Email para primer endpoint de autenticación "user+api@token-city.com"
password_auth Password para primer endpoint de autenticación "password123"
email_user Email para segundo endpoint de autenticación "user-manager@token-city.com"
password_user Password para segundo endpoint de autenticación "managerPassword123"

Manejo de Errores

El paquete incluye manejo de errores específicos:

from auth_component import AuthError, InvalidCredentialsError, ServiceUnavailableError

try:
    access_token = auth_client.get_access_token(**credentials)
except InvalidCredentialsError:
    print("Credenciales inválidas")
except ServiceUnavailableError:
    print("Servicio no disponible")
except AuthError:
    print("Error de autenticación general")

Ejemplo Completo

from auth_component import create_auth_client

# Credenciales
credentials = {
    "api_key": "tu-api-key",
    "email_auth": "email-auth@token-city.com",
    "password_auth": "password-auth",
    "email_user": "email-user@token-city.com", 
    "password_user": "password-user"
}

# Usar cliente
with create_auth_client() as auth_client:
    # Obtener token
    token = auth_client.get_access_token(**credentials)
    print(f"Token: {token}")
    
    # Hacer petición
    response = auth_client.make_request("GET", "/v2/user/profile", **credentials)
    print(f"Status: {response.status_code}")
    print(f"Data: {response.json()}")

Pruebas

Para probar el paquete localmente:

  1. Copia el archivo de ejemplo:

    cp test_auth.py.example test_auth.py
    
  2. Edita las credenciales en test_auth.py:

    • Reemplaza las credenciales de ejemplo con las reales
    • NO subas test_auth.py con credenciales reales a PyPI
  3. Ejecuta las pruebas:

    python3 test_auth.py
    

⚠️ Importante: El archivo test_auth.py con credenciales reales debe mantenerse local y no subirse a repositorios públicos.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tokenix_api_client-0.2.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tokenix_api_client-0.2.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file tokenix_api_client-0.2.0.tar.gz.

File metadata

  • Download URL: tokenix_api_client-0.2.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for tokenix_api_client-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3573ce4a103ebe650a663cfbc88daceca7fbe93be51357d62dc593503ab6420d
MD5 7d7c121f249ace19f832bccf5397d48a
BLAKE2b-256 e63bda44a4c079c71634490b8490f1509c948cd9d8a47672e6ff258eada14813

See more details on using hashes here.

File details

Details for the file tokenix_api_client-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for tokenix_api_client-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 861dd3b7b2537ade3f4b42b33e10e6a849ceb4d2cde106941e6fc69bf21469c9
MD5 dfbaed17418ae30e016edb5957669080
BLAKE2b-256 65eafdad0335cc0dd2900b5fb2ad5a4b826b8403429dc4a61ae6958fd4ce7b9a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page