PopNowDocs de la API
Primeros pasos
Contenido principal

SDK, CLI y herramientas de código abierto

SDK oficiales de código abierto de PopNow para Python, JavaScript, Go, PHP y Java, una CLI, la guía de configuración de MCP, Agent Skills, un proxy del lado del servidor, un bot de chat y las integraciones con Blender, ComfyUI y n8n, con los comandos de instalación de PyPI, npm, Packagist, Maven Central y el Comfy Registry.

Todo lo que PopNow publica para desarrolladores es de código abierto bajo la organización popnow-ai en GitHub, con licencia MIT. Los SDK envuelven la misma API REST que describen estas páginas, así que todo lo de aquí sigue siendo válido: los mismos IDs de modelo, los mismos campos input y el mismo saldo de la API en USD.

Los paquetes están publicados en PyPI, npm, Packagist, Maven Central y el Comfy Registry; instálalos con los comandos de esta página. HTTP plano también sigue funcionando; todos los ejemplos de esta documentación usan curl, fetch o requests.

Vista general

RepositorioQué esInstalación
popnow-pythonSDK de Python, síncrono y asíncronopip install popnow
popnow-jsSDK de JavaScript y TypeScript para Node.js 18+, Deno, Bun y entornos edgenpm install popnow
popnow-cliHerramienta de línea de comandos popnownpm install -g @popnow/cli
popnow-goCliente de Gogo get github.com/popnow-ai/popnow-go
popnow-phpCliente de PHPcomposer require popnow/popnow
popnow-javaCliente de Java para Java 17+, Kotlin y otros lenguajes de la JVMai.popnow:popnow-java en Maven Central
popnow-mcpGuía de configuración y configuraciones para clientes del servidor MCP remotoNada que instalar
popnow-skillsAgent Skills para Claude Code, Codex y otros agentesMarketplace de plugins de Claude Code
popnow-apiArchivo OpenAPI, ejemplos en curl, Python y Node, un flujo de n8nClonar o copiar
popnow-proxyProxy del lado del servidor para que las aplicaciones web y móviles llamen a la API sin tu clavenpm install @popnow/proxy
popnow-botBot autoalojado de Telegram y Discord para imágenes, videos y efectos de videoDocker
popnow-blenderCódigo fuente del complemento de BlenderZip desde popnow.ai/blender
popnow-comfyuiPaquete de nodos personalizados para ComfyUIComfyUI Manager, o comfy node install popnow-comfyui
n8n-nodes-popnowNodo de comunidad de n8n (n8n autoalojado)Settings > Community Nodes: n8n-nodes-popnow

Todas las herramientas necesitan una clave de API de la consola de la API. Guárdala en POPNOW_API_KEY; los SDK y la CLI la leen desde ahí:

export POPNOW_API_KEY="sk-popnow-..."

SDK de Python

popnow-python tiene un cliente síncrono (PopNow) y otro asíncrono (AsyncPopNow), resultados tipados, cabeceras Idempotency-Key automáticas, reintentos en 429 y 503, subida de archivos, la biblioteca de recursos y la verificación de firmas de webhooks. Necesita Python 3.9 o posterior y solo depende de httpx.

pip install popnow
Python (popnow SDK)
from popnow import PopNow

client = PopNow()  # reads POPNOW_API_KEY

task = client.images.generate(
    model="alibaba/z-image-turbo/text-to-image",
    prompt="A small red fox curled up in a teacup, soft morning light",
)
print(task.state, task.cost, "USD", task.urls[0])

images.generate crea la tarea, espera y lanza TaskFailedError a menos que tenga éxito. Los métodos de bajo nivel client.jobs.quote(), create(), get() y wait() corresponden uno a uno con los endpoints de tareas.

SDK de JavaScript y TypeScript

popnow-js no tiene dependencias en tiempo de ejecución y usa el fetch global, así que funciona en Node.js 18+, Deno, Bun, Cloudflare Workers y otros entornos edge. Incluye compilaciones ESM y CommonJS con definiciones de tipos.

npm install popnow

En Deno y Bun también está en JSR: deno add jsr:@popnow/popnow o npx jsr add @popnow/popnow.

JavaScript (popnow SDK)
import { PopNow } from 'popnow';

const popnow = new PopNow(); // reads POPNOW_API_KEY

const task = await popnow.jobs.createAndWait({
  model: 'alibaba/z-image-turbo/text-to-image',
  input: { prompt: 'A small red fox curled up in a teacup, soft morning light' },
});
console.log(task.state, task.output?.assets?.[0]?.url);

createAndWait envía una Idempotency-Key por ti y consulta la tarea hasta que sea final. jobs.quote, jobs.create y jobs.wait están disponibles cuando quieres cotizar primero o esperar en otro momento.

Línea de comandos

popnow-cli instala un comando popnow para scripts, trabajos de CI y pruebas rápidas desde una terminal. Necesita Node.js 22.12 o posterior:

npm install -g @popnow/cli
popnow --help

Para ejecutarla una vez sin instalarla: npx @popnow/cli status.

Go y PHP

popnow-go es un módulo de Go normal (Go 1.23+):

go get github.com/popnow-ai/popnow-go

popnow-php (PHP 8.1+) es popnow/popnow en Packagist:

composer require popnow/popnow

Java

popnow-java es un cliente para Java 17+, Kotlin y otros lenguajes de la JVM, publicado en Maven Central como ai.popnow:popnow-java. Su única dependencia es Jackson databind; las peticiones HTTP usan el HttpClient propio del JDK.

pom.xml
<dependency>
  <groupId>ai.popnow</groupId>
  <artifactId>popnow-java</artifactId>
  <version>0.1.0</version>
</dependency>
build.gradle.kts
dependencies {
    implementation("ai.popnow:popnow-java:0.1.0")
}
Java (popnow-java)
import ai.popnow.*;
import java.util.Map;
import java.util.UUID;

PopNowClient client = PopNowClient.builder().apiKeyFromEnvironment().build(); // POPNOW_API_KEY

CreateTaskRequest request = CreateTaskRequest.of("alibaba/z-image-turbo/text-to-image",
        Map.of("prompt", "A small red fox curled up in a teacup, soft morning light"));

TaskRecord task = client.run(request, UUID.randomUUID().toString()); // createTask + waitForTerminal
System.out.println(task.state() + " for " + task.cost() + " USD");

run crea la tarea con la Idempotency-Key que pases y espera hasta que sea final; createTask y waitForTerminal están disponibles si quieres los dos pasos por separado.

MCP y Agent Skills

El servidor MCP remoto no necesita ningún paquete: añade https://api.popnow.ai/mcp a ChatGPT, Claude, Cursor, VS Code o Claude Code. popnow-mcp reúne configuraciones para copiar y pegar en cada cliente y un pequeño puente stdio para los clientes que solo pueden iniciar servidores locales. El puente está en npm como @popnow/mcp, así que npx -y @popnow/mcp lo ejecuta sin paso de instalación.

popnow-skills enseña a los agentes de programación a crear videos, imágenes, música y locuciones con la API REST, y a consultar la referencia de la API. En Claude Code:

/plugin marketplace add popnow-ai/popnow-skills
/plugin install popnow@popnow-skills

El README cubre Codex, las aplicaciones de Claude y otros agentes.

Ejemplos e integraciones

  • popnow-api contiene el archivo OpenAPI, ejemplos ejecutables en curl, Python y Node.js, y un flujo de n8n importable. Apunta un generador de código al archivo OpenAPI si necesitas un cliente en otro lenguaje.
  • popnow-blender es el código fuente del complemento de Blender. Para instalarlo, descarga el zip desde popnow.ai/blender; el repositorio también puede generar el mismo zip.
  • popnow-comfyui es un paquete de nodos de ComfyUI en el Comfy Registry: un nodo por modelo, más PopNow Generate y PopNow LoRA. En ComfyUI Manager, abre Custom Nodes Manager, busca PopNow y haz clic en Install, o ejecuta comfy node install popnow-comfyui. ComfyUI tiene los pasos completos y el nodo de un solo archivo, por si prefieres un archivo que puedas leer en un minuto.
  • n8n-nodes-popnow es un nodo de comunidad de n8n en npm para n8n autoalojado. Abre Settings > Community Nodes > Install e introduce n8n-nodes-popnow, o instálalo desde una terminal y reinicia n8n. Todavía no es un nodo verificado, así que n8n Cloud no puede instalarlo; el flujo con HTTP Request no necesita instalación y también funciona ahí.
  • popnow-proxy es una pequeña ruta del lado del servidor para Next.js, Express y otros entornos con fetch. Una aplicación web, móvil o de escritorio llama a tu servidor, y el proxy añade la clave de API allí, así que la clave nunca llega al cliente. Necesita Node.js 22.12 o posterior.
  • popnow-bot es un bot de Telegram y Discord que ejecutas tú mismo con Docker: imágenes, videos y efectos de video en un chat, con una consulta de precio antes de las ejecuciones de pago y límites de gasto diarios. Clona el repositorio e inícialo con docker compose up -d --build, o descarga la imagen precompilada popnow/popnow-bot desde Docker Hub.
# n8n community node, from a shell on self-hosted n8n
mkdir -p ~/.n8n/nodes && cd ~/.n8n/nodes
npm install n8n-nodes-popnow
# server-side proxy
npm install @popnow/proxy

¿Hay un SDK oficial de PopNow?

Sí. Los SDK de Python y JavaScript, la CLI y los clientes de Go, PHP y Java de esta página los mantiene PopNow y son de código abierto en github.com/popnow-ai.

¿Están los SDK en npm o en PyPI?

Sí. pip install popnow instala el SDK de Python desde PyPI y npm install popnow el SDK de JavaScript desde npm. La CLI es @popnow/cli en npm, el cliente de PHP es popnow/popnow en Packagist, el cliente de Java es ai.popnow:popnow-java en Maven Central, y el paquete de ComfyUI es popnow-comfyui en el Comfy Registry. El CHANGELOG.md de cada repositorio enumera sus versiones.

¿Debo usar un SDK o llamar directamente a la API REST?

Cualquiera de las dos. Los SDK añaden reintentos, claves de idempotencia, consultas periódicas y resultados tipados. HTTP directo no necesita instalar nada y es lo que muestran todos los ejemplos de esta documentación.

¿Los SDK tienen algún coste?

No. El código es gratuito con licencia MIT; las generaciones de la API gastan el saldo independiente de la API en USD al mismo precio de los modelos que en la web. Añade fondos en API billing. MCP con OAuth usa créditos de la web; MCP con clave de API usa USD de la API.

¿Dónde informo de un error?

Abre una incidencia en el repositorio al que pertenece. Si se trata de un problema de seguridad, sigue el archivo SECURITY.md de ese repositorio en lugar de abrir una incidencia pública.

En esta página