Introduction
If your application has to produce invoices, quotes or contracts and you would rather not run a document engine yourself, ReportingCloud is a way to do it. Text Control ReportingCloud is a Web API that Text Control hosts: your application sends a template and JSON data over HTTPS, and the service returns the finished document. Read on for what the service consists of, what you build with it, how it compares with DS Server and TX Text Control .NET Server and how to try it.
What ReportingCloud Is
ReportingCloud is a cloud service that creates documents from templates. A template is an MS Word compatible document with merge fields, placeholders named after the fields of your data, and merge blocks, sections that are repeated for each item of a list. You send the name of a stored template, or the template itself, together with JSON data to the Web API at https://api.reporting.cloud/, and it returns the merged document as PDF, DOCX or another format.
- Nothing to install. The service runs on Text Control's servers, hosted on Microsoft Azure. Your application needs an account, an API key and a way to send HTTPS requests with JSON. Requirements lists the details.
- Any language. Requests and responses are JSON, and documents travel inside them as Base64 strings. Any client that can send HTTP requests can call the Web API, whether it is written in .NET, JavaScript, Node.js, PHP, Python or Java, or is a mobile app.
- Based on TX Text Control. The document engine behind the Web API and the template editor in the ReportingCloud portal is TX Text Control. See Architecture.
- Subscription plans. You pay by the month or by the year for a plan with a monthly document quota and a limit on stored templates. See Plans and Licensing.
What It Consists of
| Part | What it does | How you use it |
|---|---|---|
| Web API | Merges templates with JSON data, converts and appends documents, finds and replaces text, renders page thumbnails, manages the template storage, checks spelling and reads tracked changes | HTTPS requests to the endpoints below https://api.reporting.cloud/v1/ |
| Template storage | Keeps the templates of your account, so that a merge request only names the template | You upload templates in the portal or with the Web API. Your plan sets how many it holds. |
| Portal | The web application at https://portal.reporting.cloud/: a dashboard with recent activity, the service status and your quota, your templates, datasource excerpts, API keys, transactions and statistics | Your browser |
| Template editor | An MS Word compatible editor in the portal for designing templates with merge fields, merge blocks and image placeholders | You open a template in the portal together with a datasource excerpt, sample JSON that fills the editor's lists of field names |
| SDKs | Libraries for .NET, PHP, Java and Ruby that wrap the HTTP requests in classes and methods | The NuGet package TXTextControl.ReportingCloud, the Composer package textcontrol/textcontrol-reportingcloud and the Java and Ruby SDKs |
| Status page | Shows the availability of the Web API, the portal and the backend, and the incidents reported | https://status.reporting.cloud in your browser |
Portal describes the pages of the portal, and SDKs compares the SDKs.
What You Can Build
| Task | Endpoints | Read |
|---|---|---|
| Invoices, quotes, contracts, letters and other documents created from a template and JSON data | document/merge | Mail Merge |
| Documents converted between DOCX, DOC, RTF, HTML, PDF and other formats, or their plain text extracted | document/convert | Converting Documents |
| Several documents combined into one | document/append | Appending Documents |
| A document created from a template by replacing strings of text | document/findandreplace | Find and Replace |
| Page images for previews | document/thumbnails, templates/thumbnails | Thumbnails |
| Spell checking for text in your application | proofing/check, proofing/suggestions | Spell Checking |
| Tracked changes of a document listed, accepted or rejected | processing/review/trackedchanges, processing/review/removetrackedchange | Tracked Changes |
The layout of a document lives in its template, not in your code. When someone changes a stored template in the portal's editor, the next merge request that names the template uses the new layout, and your application stays as it is.
Who It Is for
- Developers in any language who need documents from their application and want to call a Web API rather than host and license a document engine.
- Template designers who lay out templates in the editor of the portal without writing code. With the Extreme plan, the account holder can invite external template designers into groups: each designer gets a login of their own and works only on the templates of their group.
- Projects whose volume fits a monthly quota, from 300 documents a month in the Basic plan to 100,000 in the Extreme plan. Plans and Licensing lists the plans.
ReportingCloud, DS Server and TX Text Control .NET Server
Text Control builds all three products on TX Text Control. They differ in where the documents are processed, how your application reaches the engine and how you pay for it:
| ReportingCloud | DS Server | TX Text Control .NET Server | |
|---|---|---|---|
| What it is | A Web API that Text Control hosts and operates | A document server that you install on your own infrastructure | A set of .NET components that you add to your application as NuGet packages |
| Where documents are processed | On Text Control's servers, hosted on Microsoft Azure | On your servers | In your application |
| Your application's language | Any language that can send HTTPS requests | Any language that can send HTTP requests | .NET |
| Setting it up | An account and an API key | Installing DS Server on Linux or Windows, in a virtual machine or a container | Installing the NuGet packages |
| Template design | The template editor in the ReportingCloud portal | The Document Editor, embedded in your web application | The Document Editor, hosted in your ASP.NET Core application |
| Authentication | An API key or the user name and password of the account | Built-in OAuth with security profiles | Your application implements it |
| Licensing | A monthly or yearly subscription with quotas for documents, stored templates and spell checking | Per server installation, per year | Per developer, plus runtime licenses for production servers |
Choose ReportingCloud when you want documents without running servers, and your merge data may be processed in Text Control's cloud. Choose DS Server when documents and merge data have to stay on infrastructure you control: the ReportingCloud pricing page points to it as the on-premises solution, and the services agreement asks you to contact Text Control if you want to host ReportingCloud yourself. Choose TX Text Control .NET Server when your application is written in .NET and needs full control over documents in code.
The Web APIs of ReportingCloud and DS Server have different endpoints and different authentication, so moving from one to the other means changing your requests. The DS Server introduction and the TX Text Control .NET Server introduction describe the other two products.
Try It
ReportingCloud has a free 30-day trial. You sign up with your email address on the registration page of the portal, and the template storage of the new account already holds the demo template sample_invoice.tx. Once you have created an API key, you can merge your first document.
During the trial, you can store 20 templates and create up to 1,000 documents a month, and every document carries the ReportingCloud logo. After 30 days, the account falls back to a Free account unless you add a subscription. Trial and Free Account lists the restrictions of both.
- Creating an Account: sign up and log in to the portal.
- Web API: create your first PDF with curl and the demo template.
Next Steps
- Architecture: how the Web API, the portal and the template storage work together.
- Supported File Formats: the formats each endpoint reads and returns.
- Plans and Licensing: the plans, their quotas, test mode and the services agreement.
- Data Security and Privacy: what the service stores, what it doesn't and where it runs.
- Getting Started: your first document with curl, ASP.NET Core, .NET Framework, PHP, Java or Ruby.