Create spreadsheets & documents with Retool
In Retool, add a REST API resource (or a REST query) pointing at OpenOfficeAI and wire it to a button. Your internal tool can then turn table data into a shareable spreadsheet and show the link — useful for ops teams exporting data for external partners.
// Resource: REST API, Base URL https://openofficeai.com
// Header: Authorization = Bearer YOUR_API_KEY
// Query "createSheet" (POST /api/v1/sheets), Body (JSON):
{
"title": {{ titleInput.value }},
"sheets": [{
"rows": {{ formatDataAsArray(table1.data) }}
}]
}
// On a button click: createSheet.trigger();
// Then read createSheet.data.url to show or open the link.How to create a spreadsheet with Retool
- 1Create a REST API resource with the base URL and Authorization header.
- 2Add a POST query to /api/v1/sheets with a JSON body.
- 3Map your component data (e.g. a table) into the rows array.
- 4Trigger the query on a button and use query.data.url.
Why use OpenOfficeAI with Retool
- Give internal users a one-click "export & share" button.
- Auth header set once on the resource, reused by every query.
- Output a public link your ops team can send to partners.
Frequently asked questions
How do I convert a Retool table into rows?
Write a small JS transformer that returns a header array followed by each row mapped to an array of values, then reference it in the query body as the rows value.
Where do I put the API key?
Set it once as a header on the REST API resource (or use Retool's secrets manager). Individual queries inherit it, so the key isn't scattered across the app.
Can I open the result in a new tab automatically?
Yes. In the query's success handler, call utils.openUrl(createSheet.data.url) to open the spreadsheet for the user.
Start creating documents with Retool
Free tier includes 500 API calls per month — no card required.