niiko · Versión última
niiko@0.1.0
El cliente de Python. Dataclasses por acción y por lectura, y un Result con los desenlaces, cero dependencias.
Última actualización
- Publicada
- UTC
- Registro
- pypi.org/project/niiko/
- Código
- vorluno/niiko-sdk-python
Instalar esta versión
pip install niiko==0.1.0Qué cambió alrededor de esta versión
- Los SDK y la CLI leen Añadido
@vorluno/niiko-sdk,niikoyniiko-cli0.3.0 aceptan un token de acceso OAuth (accessToken,access_token=,niiko login --token) y tienen un método de solo lectura por lectura:getCollections(),get_collections(),niiko read kiipu.collections_get. Una lectura tiene dos desenlaces, hecha o negada, y no lleva clave de idempotencia. - Una difusión puede declararse promoción Añadido
miira.broadcast_quotedacepta unpurposeopcional:notice(el de siempre, sin cambios) opromotion. Una promoción nunca sale como texto libre, ni con la ventana de 24 horas abierta: exige una plantilla de marketing aprobada (si no,plantilla_invalida) y solo llega a quien dio su consentimiento de marketing (si no,no_marketing_consent). Los números de EE. UU. quedan fuera con el nuevo desenlace de filaus_moratorium, que solo se emite en una promoción, así que las integraciones existentes nunca lo ven. El propósito va firmado en el presupuesto. - Lecturas declaradas, solo con OAuth Añadido
POST /api/v1/reads/{id}contesta nueve lecturas declaradas —lo que se debe, lo cobrado, la agenda, el embudo, el mes—, nunca tablas ni texto que alguien escribió. Solo con un token OAuth, en nombre de una persona y con su rol (una llave de API recibereads_need_a_person); cada lectura tiene su interruptor en el workspace, apagado por defecto. El servidor MCP las lista como herramientas de solo lectura. - Las difusiones ya no esperan a las horas de silencio Cambiadoniiko ya no difiere ni excluye envíos por la hora del día. Las filas de una difusión dejan de salir como
quiet_hours(el valor sigue en el enum de desenlaces, pero nunca se emite), y los mensajes que encolamiira.broadcast_sentsalen enseguida, a cualquier hora. La ventana de servicio de 24 horas de Meta y las reglas de consentimiento no cambian. - niiko-cli y n8n-nodes-niiko AñadidoUn cliente de línea de comandos y un nodo de comunidad para n8n, los dos generados del mismo plan que los SDK. La CLI dice el desenlace en su código de salida (0 hecho · 2 negada · 3 esperando aprobación · 1 error); el nodo trata las negativas como resultados del ítem, no como errores del nodo.
- Las negativas ahora llevan un mensaje CambiadoLas respuestas
refusedcon motivostaleincluyendetail.message: los candidatos de un nombre ambiguo, las etapas que sí existen, por qué una plantilla no vale. El motivo llegaba a quien integra; la explicación, no. - Kiipu: anular un borrador, reportar un pago Añadido
kiipu.draft_voidedanula una factura en borrador (nunca una emitida).kiipu.payment_reporteddeja un aviso de pago en la cola de aprobación; una persona lo aplica. - Difusión por WhatsApp, en dos pasos Añadido
miira.broadcast_quotedcotiza el mismo mensaje a hasta 50 clientes (gratis dentro de la ventana de 24 horas, plantilla aprobada y tarifa fuera de ella) y devuelve una cotización firmada válida 15 minutos;miira.broadcast_sentmanda exactamente lo cotizado, o se niega con una cotización nueva si algo cambió. - CRM: notas, contactos, recordatorios, oportunidades Añadido
crm.note_added,crm.contact_added,crm.task_createdycrm.deal_created. Todas nombran al cliente por su nombre; ninguna lo crea. - Tokens OAuth aceptados en el endpoint de acciones AñadidoLos tokens OAuth del servidor MCP ya son una credencial de
POST /api/v1/actions/{id}, con los mismos alcances por acción que las llaves de API. El consentimiento se concede por acción, en la pantalla de consentimiento de niiko. - Borradores de factura, llamadas, responsables y etapas Añadido
kiipu.invoice_proposedprepara un borrador (una persona lo emite),crm.call_loggedregistra una llamada,crm.owner_assignedcambia el responsable de un cliente ycrm.stage_movedmueve una oportunidad. El servidor MCP pasó de una herramienta a cuatro sin tocar el servidor. - Se abre la API de acciones Añadido
POST /api/v1/actions/{id}con llaves de API, alcances por acción con versión, claves de idempotencia, tres desenlaces y webhooks firmados. Primera acción pública:miira.lead_create.