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 HTTPpython-dotenv>=0.19.0- Para variables de entorno (opcional)
Uso
Importar el cliente
from tokenix_api_client 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 tokenix_api_client 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 tokenix_api_client 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:
-
Copia el archivo de ejemplo:
cp test_auth.py.example test_auth.py
-
Edita las credenciales en
test_auth.py:- Reemplaza las credenciales de ejemplo con las reales
- NO subas
test_auth.pycon credenciales reales a PyPI
-
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tokenix_api_client-0.2.4.tar.gz.
File metadata
- Download URL: tokenix_api_client-0.2.4.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2210b0629cae8a9f3ed1625d0e64db935960960934763c4947bd2fee773b42b
|
|
| MD5 |
1849ba65d220af3932db6f99f36a9d66
|
|
| BLAKE2b-256 |
689a29721ad84f8ed08d722a3f7e5165b7b498e6739817c5c94b360fdfa35498
|
File details
Details for the file tokenix_api_client-0.2.4-py3-none-any.whl.
File metadata
- Download URL: tokenix_api_client-0.2.4-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54c90799bca76316364f93651468a77c5e2ff81a4862920297f4f60ef32908ef
|
|
| MD5 |
5600caf23916069730f0c563c617d7a7
|
|
| BLAKE2b-256 |
3fa1e52af87fd60e8fa415ef770e80772d859f84228bf3c424080f8fdf95b39f
|