{"status":"ok","ts":1779302690.671844}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24443/health+check' --header 'Authorization: Bearer YOUR_API_KEY'
{"patch_engine_semver":"1.0.0","supported_tile_families":["spectre_tile_1_1"],"roadmap":{"tile_families":[{"id":"spectre_tile_1_1","status":"supported","label":"Spectre / Tile(1,1)"},{"id":"einstein_hat_tile","status":"planned","label":"Einstein Hat monotile (same API hooks)"},{"id":"turtle_tile","status":"planned","label":"Companion turtle monotile family"}]},"free_tier_formats":["jpeg","jpg","png"],"supported_masks":["square","rectangle","circle","regular_hexagon","triangle","rounded_rect"],"supported_formats":["svg","csv","json","stl","stl_zip","obj_zip","glb","instance_json","png","jpg","jpeg"],"output_notes":{"glb":"3D tiled scene with one named, movable node per retained tile.","stl":"Whole-panel mesh output.","stl_zip":"Independent STL files, one per tile.","obj_zip":"Independent OBJ files, one per tile."},"boundary_behavior":"clip","visual_styling":{"side_styles":["flat","curvy","wavy","jagged","blocky"],"side_style_aliases":{"curved":"curvy","curve":"curvy"},"side_style_amplitude":{"min":0.0,"max":0.75,"default":0.12},"tile_edge_ratio":{"min":0.25,"max":4.0,"default":1.0,"note":"Anisotropic stretch of export geometry only; substitution placement remains canonical Tile(1,1). Not a true Tile(a,b) two-family substitution."},"side_style_wavy_segments":{"min":4,"max":64,"default":10},"palette_by_label":{"supported":true,"keys_per_label":["fill","stroke","opacity","stroke_width"],"wildcard_label":"*"},"request_fields":["side_style","side_style_amplitude","tile_edge_ratio","side_style_wavy_segments","palette_by_label"]},"limits":{"max_supertile_iterations":26,"max_tiles_per_job":500000,"sync_max_tiles":8000,"svg_max_tiles_hard":25000,"png_max_dimension_px":16000,"png_max_pixels":50000000,"max_output_bytes_soft":32212254719,"max_wall_time_sec":3600.0,"job_gc_hours":24,"stl_tile_instancing_floor":50000,"svg_max_chars":400000000,"redis_url":null},"atlas":{"available":true,"max_canonical_half_side":1544.0511060838514,"max_canonical_full_side":3088.102212167703,"cores":[{"tile_family":"spectre_tile_1_1","iterations":5,"tile_count":34649,"inscribed_half_side":72.85611373427516,"inscribed_center":[180.85884907869263,-190.4637563106116],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":6,"tile_count":272791,"inscribed_half_side":197.20129785929603,"inscribed_center":[611.0929636810714,-457.26130132202326],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":7,"tile_count":2147679,"inscribed_half_side":516.3669015101796,"inscribed_center":[1297.8529395021253,-1742.7605795910576],"patch_version":"0.1.0"},{"tile_family":"spectre_tile_1_1","iterations":8,"tile_count":16908641,"inscribed_half_side":1544.0511060838514,"inscribed_center":[4553.311273135866,-4060.276908476975],"patch_version":"1.0.0"}]},"coordinate_convention":"Canonical Tile(1,1) planar coordinates (unit-edge reference). Global client scale ∈ ℝ⁺ and rotation_deg are similarity transforms applied after substitution.","operational":{"run_jobs_in_process":false,"rate_limit_post_patch":"30/minute","queue_max_active_jobs":2000,"queue_max_active_jobs_per_key":100,"queue_max_heavy_jobs":300,"queue_max_heavy_jobs_per_key":10,"download_ttl_seconds_max":3600,"artifact_retention_note":"Generated artifacts are kept for roughly one hour after the job completes. Download or copy them to your own storage if you need them longer."}}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24444/capabilities' --header 'Authorization: Bearer YOUR_API_KEY'
{"job_id":"bfb87a47-6910-462c-86ec-2bb63ca9bba7","status":"queued","tier":"tier_free","size_class":"small","estimated_seconds":5.0,"request_id":"2c7470cc-b96f-4725-b419-41826e2871e5","queue":{"status":"queued","size_class":"small","position":1,"estimated_wait_seconds":0.0}}
curl --location --request POST 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24445/create+patch+job' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"mask": {"type": "circle", "radius": 16},
"formats": ["png", "jpg"],
"png_width_px": 512,
"png_height_px": 512,
"jpg_width_px": 512,
"jpg_height_px": 512
}'
{"job_id":"bfb87a47-6910-462c-86ec-2bb63ca9bba7","status":"completed","ttl_seconds":900,"urls":{"patch.jpg":"/v1/downloads/bfb87a47-6910-462c-86ec-2bb63ca9bba7/patch.jpg?exp=1779375751&sig=d61d646a3e3893ba4bd7c753a46cb9af2e8eca4178467ec19f62a2481ad3d39a","patch.png":"/v1/downloads/bfb87a47-6910-462c-86ec-2bb63ca9bba7/patch.png?exp=1779375751&sig=c6c4732a4874653588673c05fe14fb4570047b05603da7318d701d7694ec5064"}}
curl --location --request GET 'https://zylalabs.com/api/12629/aperiodic+monotile+generator+api+for+fabrication+workflows/24446/get+job+download+urls&job_id=Required' --header 'Authorization: Bearer YOUR_API_KEY'
Después de registrarte, a cada desarrollador se le asigna una clave de acceso a la API personal, una combinación única de letras y dígitos proporcionada para acceder a nuestro endpoint de la API. Para autenticarte con el API de Generador de Monotiles Aperiodicos para Flujos de Trabajo de Fabricación API simplemente incluye tu token de portador en el encabezado de Autorización.
| Encabezado | Descripción |
|---|---|
Autorización
|
Requerido
Debería ser Bearer access_key. Consulta "Tu Clave de Acceso a la API" arriba cuando estés suscrito.
|
Sin compromiso a largo plazo. Mejora, reduce o cancela en cualquier momento. La Prueba Gratuita incluye hasta 50 solicitudes.
(Ahorra 2 meses pagando anualmente 🎉)
Acerca de la API
La API del Generador de Monotiles Aperiodicos es un servicio REST alojado para geometría de monotile aperiodica sin huecos utilizando Spectre Tile 1,1 (monotile de Einstein). Rellena una región con un mosaico no repetitivo, recorta a una forma de máscara, asigna IDs y etiquetas de mosaicos estables, y exporta artefactos listos para producción. Construido para desarrolladores y agentes de IA que necesitan mosaicos reales sin ejecutar profundidad de sustitución, construcción de atlas o herramientas de iteración fractal en el cliente. Soporta gráficos por computadora, mundos procedurales, Blender y motores de juegos, Adobe y CAD, impresión 3D, arte generativo, visualización científica, metamateriales, distribuciones de ondas y acústicas, experimentos de red adyacentes a la criptografía y pipelines de datos que requieren geometría determinista.
Qué recibe esta API y qué proporciona tu API (entrada/salida)
Envías JSON con una máscara y formatos de salida. Las máscaras incluyen círculo, rectángulo, cuadrado, triángulo, hexágono regular y rectángulo redondeado, centrados automáticamente en unidades de mosaico canónicas. Opciones opcionales de escala, rotación, semilla, trazo SVG y paleta, dimensiones raster, y profundidad de extrusión 3D. Autenticarse con el encabezado X-API-Key. El flujo de trabajo es asincrónico: crear un trabajo de parche, consultar el estado del trabajo hasta que se complete o falle, luego obtener URLs de descarga firmadas. Los formatos incluyen png, jpg, jpeg, svg, csv, json, stl, glb, stl_zip, obj_zip, e instance_json. GLB proporciona un nodo nombrado por mosaico. STL ZIP y OBJ ZIP proporcionan mallas independientes por mosaico. Las claves gratis permiten solo pequeñas vistas previas raster. Las claves comerciales y de solo uso desbloquean vectores, 3D, paquetes zip y trabajos más grandes. El encabezado opcional Idempotency-Key previene envíos duplicados al reintentar. Llama al endpoint de capacidades para inspeccionar límites de nivel en tiempo real, máscaras soportadas, formatos y profundidad de cola antes de trabajos grandes.
Cuáles son los casos de uso más comunes de esta API
Anti-moire y muestreo no periódico para renderización y texturas. Mallas procedimentales y decoración de mundos en Unity, Godot y Three.js a través de GLB. Integración de complemento y pipeline de Blender para superficies en mosaico. Salida vectorial para Illustrator, Inkscape y flujos de trabajo de láser o plotter a través de SVG. Impresión 3D de un solo panel con STL o mosaicos imprimibles separados con STL ZIP y OBJ ZIP. Escultura generativa y diseño ornamental. Investigación y educación sobre mosaicos aperiodicos. CSV, JSON y manifiestos de instancia para importadores personalizados, indexación espacial y conjuntos de datos de aprendizaje automático. Los agentes deben comenzar a los usuarios con png o jpg, pasar a svg para herramientas de diseño, glb para 3D en tiempo real, stl para paneles de fabricación, y stl_zip cuando cada mosaico deba ser un objeto separado.
Hay limitaciones con tus planes
El nivel gratuito está limitado a pequeñas vistas previas en PNG y JPG. Los trabajos pesados como grandes exportaciones GLB o zip están clasificados como pequeño, estándar o pesado y pueden estar en cola; las respuestas incluyen tiempo de espera estimado y posición en la cola, por lo que los clientes deben consultar en lugar de reenviar. Las URLs de descarga firmadas caducan; los usuarios deben guardar los artefactos que les importan. No preguntes a los usuarios finales sobre la familia de mosaicos, centro de la máscara, modo de retención, versión de parche, profundidad de sustitución o extensión de cobertura. La guía completa de integración legible por máquina para agentes de IA está disponible en el sitio de documentación del proveedor configurado en esta lista.
Cada punto final devuelve datos JSON El punto final de Verificación de Salud proporciona un estado y una marca de tiempo El punto final de Capacidades enumera los formatos, máscaras y límites de nivel admitidos El punto final de Crear Trabajo de Parche devuelve el estado del trabajo y los tiempos de espera estimados El punto final de Obtener URL de Descarga de Trabajo proporciona URL para descargar artefactos generados
Los campos clave incluyen `status`, `job_id`, `urls`, `estimated_seconds` y detalles de `queue`. Por ejemplo, la respuesta del Crear trabajo de parche incluye `job_id`, `status` y `estimated_seconds`, mientras que la respuesta de Obtener URLs de descarga de trabajos incluye `urls` para archivos descargables
El punto final de Crear Trabajo de Patches acepta parámetros como `máscara`, `escala`, `rotación`, `semilla`, `paleta` y `dimensiones raster`. Los usuarios pueden personalizar sus solicitudes especificando estos parámetros en la carga útil JSON para controlar la apariencia y dimensiones de la salida
Los datos de respuesta están organizados en un formato JSON estructurado Por ejemplo la respuesta de Crear Trabajo de Parche incluye un objeto de nivel superior con los detalles del trabajo mientras que la respuesta de Obtener URLs de Descarga del Trabajo contiene un objeto `urls` que mapea los nombres de archivos a sus enlaces de descarga
El endpoint de Capacidades proporciona información sobre formatos de salida soportados tipos de máscara límites de nivel y configuraciones de cola Ayuda a los usuarios a entender qué formatos y tamaños son permisibles para sus trabajos de parcheo asegurando compatibilidad con sus necesidades
Los usuarios pueden utilizar los datos devueltos verificando el campo `status` para monitorear el progreso del trabajo utilizando `job_id` para el seguimiento y accediendo a `urls` para descargar los artefactos completados Este enfoque estructurado permite una integración eficiente en los flujos de trabajo
Los casos de uso típicos incluyen generar texturas para renderizado crear mallas procedimentales en motores de juegos y producir gráficos vectoriales para herramientas de diseño Los usuarios también pueden aprovechar la API para la impresión 3D y fines educativos relacionados con los azulejos aperiodicos
La precisión de los datos se mantiene mediante el uso de algoritmos deterministas para generar patrones monolíticos aperiódicos La API asegura que la salida se ajuste a los parámetros y formatos especificados proporcionando resultados confiables y consistentes para los usuarios