TenTags API & AI generate - API-first document generation for HTML, PDF, XLSX & DOCX

by
TenTags API turns declarative Style/Data CSV templates into HTML, PDF, XLSX, or DOCX files through one authenticated endpoint. Build and preview templates in the web playground, then generate documents remotely from any backend or CLI.

Add a comment

Replies

Best
Hi Product Hunt! I’m Zhandos, a Python developer from Kazakhstan, and today I’m launching the TenTags API. TenTags started as a Python library because I was tired of maintaining different code for HTML tables, PDF reports, Excel spreadsheets, and Word documents. The original idea was simple: define one declarative template and render it anywhere. The new hosted API makes that engine available to any backend through one authenticated HTTP request. Your application does not need to be written in Python. The workflow: 1. Generate an API key in your TenTags profile 2. POST Style/Data CSV or an existing template ID to /api/generate 3. Receive HTML, PDF, XLSX, or DOCX directly in the response What’s available today: ✅ Remote document generation through one REST endpoint ✅ HTML, PDF, XLSX, and DOCX responses ✅ Bearer token and X-TenTags-Api-Key authentication ✅ Inline templates or reusable template IDs ✅ cURL, Python, Node.js, PHP, and Go examples ✅ A free API plan for getting started ✅ AI-assisted playground and live preview ✅ Community template gallery ✅ TenTags 2.3.2 Python package for local generation The API is now the heart of TenTags.org. The playground, AI generator, and gallery help you build the template; the API lets you put it into a real product or automated workflow. I’d love your feedback: what document workflow, framework integration, or output format should I support next? — Zhandos

The playground actually makes it click for me. I dropped in a quick CSV template and got a clean PDF back in under a minute without touching a config file.

 Yes, I added a sandbox for clarity and example. But I created the TenTags DSL for ease of use in the backend. We divided the syntax into three blocks: preamble, style(), and data(), so they could be used individually as templates. The language is simple: initially, there were only ten tags (now there are fourteen), which are used to write a universal representation that can then be converted into various file formats.

A CLI example that streams progress to stdout would be really useful for long-running PDF batches, so I can pipe it into logs or chain it with other shell tools without losing feedback on which template is rendering.

 Thank you very much for your comment and very helpful advice! We'll definitely take it into account. In the next version of the tentags library on PyPI, we'll try to implement logging and process execution display to simplify integration and monitoring of long-running tasks.

 The Tentags library on PYPI has been updated, adding an optional progress_callback parameter for file-based renderers, as well as the "streamlog": True (default: False) parameter in requests.

Learn more at

The playground made it painless to wire up a CSV template and watch it spit out a clean PDF without writing a single line of conversion code. Surprisingly smooth for a single API call.

 Really appreciate it! TenTags started with just 10 core tags (now 14) because I believe document generation shouldn't feel like rocket science. Hearing that it felt surprisingly smooth means the world to me. Thanks for testing it out

  'Without writing a single line of conversion code' is exactly why I built TenTags. The playground on is just the tip of the iceberg. While the core engine is fully open-source on PyPI (Apache 2.0), we also built a SaaS layer where you can generate templates with AI, store them cloud-side, and automate the whole flow via a single API call using a personal tt_live_key.