Klarety

Inicio rápido del SDK

Instale el SDK de Python, conéctese a Nexus con una clave de API y ejecute su primera consulta.

Para desarrolladores

El de Python de Klarety le da a su código un solo objeto, Nexus, que llega a todo su : , tablas, archivos y carpetas, conexiones, agentes y trabajos. Esta página lo lleva a su primera consulta en unos cinco minutos.

Antes de empezar

  • Python 3.11 o posterior. Verifíquelo con python3 --version.
  • Una . Solo los administradores del espacio de trabajo crean claves; si no lo es, pídala a uno (vea Miembros).
  • en el espacio de trabajo. Una clave gasta los créditos del espacio de trabajo, así que las consultas solo corren mientras haya.

Disponible bajo solicitud

El SDK y la CLI de Klarety están disponibles bajo solicitud. Para solicitar acceso para su espacio de trabajo, contáctenos.

Instale el SDK

pip install klarety

Use un entorno virtual si trabaja en más de un proyecto:

python3 -m venv .venv
source .venv/bin/activate
pip install klarety

Cree una clave de API

Abra ConfiguraciónSDK y API, seleccione Crear clave y verifique que es usted. Dé a la clave un Nombre (por ejemplo "Portátil" o "Servidor de producción"), elija su Acceso y defina cuándo Vence. Deje vacío Orígenes del navegador; es solo para claves que se usan desde una página web.

Copie la clave ahora. Se muestra una sola vez.

El formulario Crear clave de API en SDK y API

Ponga la clave en su entorno

El SDK lee la clave de KLARETY_API_KEY, así que nunca tiene que aparecer en su código.

export KLARETY_API_KEY="paste-your-key-here"

En un portátil también puede guardarla en el llavero del sistema con la CLI: vea Autenticación.

Conéctese y revise su cuenta

first_query.py
from klarety import AuthError, Nexus

try:
    nexus = Nexus.connect()
except AuthError as refused:
    raise SystemExit(f"Sign-in failed: {refused}")

with nexus:
    account = nexus.account()
    print("Workspace:", account.org_id)
    print("Plan:", account.plan)
    print("Credits:", account.credits)

Nexus.connect() cambia su clave por un token de una hora y lo renueva. account() devuelve un Account con org_id, user_id, roles, plan y credits. plan y credits son None si no se pudieron leer, así un saldo desconocido se distingue de cero.

Ejecute su primera consulta

Agregue esto dentro del bloque with nexus::

    result = nexus.sql("SELECT 1 AS ok")
    print(result.rows)

Ejecútelo:

python first_query.py

Compruebe que funcionó

Verá el ID de su espacio de trabajo, su plan, su saldo de créditos y la fila de la consulta:

Workspace: <your workspace ID>
Plan: <your plan>
Credits: <your balance>
[{'ok': 1}]

nexus.sql() devuelve un ResultSet. Sus rows son diccionarios por nombre de columna, bytes_scanned indica cuántos datos leyó la consulta y truncated es True cuando había más filas de las devueltas. Ejecutar SQL explica cada campo.

Un primer script completo

Este script lista sus tablas y consulta una, con manejo de errores real.

list_and_query.py
from klarety import (
    AuthError,
    InsufficientCreditsError,
    Nexus,
    RefusedError,
    ServiceError,
)

try:
    with Nexus.connect() as nexus:
        tables = nexus.tables.list()
        for table in tables:
            print(table["name"])

        if tables:
            first = tables[0]["name"]
            result = nexus.sql(f"SELECT * FROM {first} LIMIT 5")
            for row in result.rows:
                print(row)
except AuthError:
    print("The key was not accepted. Check KLARETY_API_KEY, or create a new key.")
except InsufficientCreditsError:
    print("The workspace is out of credits. Add credits in the app.")
except RefusedError as refused:
    print(f"Not allowed: {refused}")
except ServiceError as failed:
    print(f"Klarety could not answer, try again shortly: {failed}")

Conéctese sin la variable de entorno

Puede pasar la clave directamente, por ejemplo cuando la lee de su propio almacén de secretos:

nexus = Nexus.connect(api_key=my_secret_store.get("klarety"))

connect() también acepta timeout (segundos por solicitud, 30 por defecto). Cierre la conexión al terminar, con nexus.close() o usando with.

Mantenga las claves fuera del control de versiones

Una clave actúa como todo su espacio de trabajo y gasta sus créditos. Nunca la suba a un repositorio ni la pegue en una página web. Si se filtra, revóquela de inmediato en ConfiguraciónSDK y API.

Si algo sale mal

Lo que veQué significaQué hacer
AuthError: pass an api key or set KLARETY_API_KEYNo se encontró una clave.Exporte KLARETY_API_KEY en la misma terminal, o pase api_key=.
AuthError: api key rejectedLa clave es incorrecta, fue revocada o venció.Cree una clave nueva y úsela.
InsufficientCreditsErrorEl espacio de trabajo no tiene créditos para este trabajo.Agregue créditos y vuelva a ejecutarlo.
ModuleNotFoundError: klaretyEl SDK está instalado en otro Python.Active su entorno virtual e instálelo de nuevo.

Próximos pasos

En esta página