Is it possible for a Coda pack to modify a static table without using the Coda API?

A single Coda pack is not allowed to draw data from more than one API (can’t have more than one domain accessed), and my pack already draws data from an API- so it can’t use any of the endpoints in the Coda API to modify table rows.

I’d like the return value of a formula from my Coda pack to be placed into a table that already exists on a page of a doc. The table is intended to contain no formulas, just basic text. As far as I can tell the only table that a pack can create or modify is a sync table, which is completely different from what I’m trying to do.

It seems like having a pack query an API and put some of the result data (the string “cat”, for example) in a basic table would be simple, but the more I look into it the more it seems impossible. Is there any way to do this?

I would also settle for a way to get the text onto the page in any fashion, as long as it was stored as text and not a formula that might retrigger at an unpredictable time- if a second pack (with access to the Coda API) would be able to read the data and properly put it into the table.

Edit: here’s what I mean by formulas being unpredicatable.

Coda has complex logic that determines when formula results need to be recalculated. Formulas will always recalculate when the parameter values change, but it will also happen periodically for other reasons including routine maintenance. In general you shouldn’t make any assumptions about how often your formula will be run. If running your formula is expensive in some way (API cost, etc) make sure to use caching and rate limits to limit the impact of recalculation.

Just make a button

Then the button outputs it’s return value in an editable fashion

Hi @thefifth_reddit - Our Packs model is a little different that other platforms, many of which use scripts to both retrieve external data and write it to the doc. As @Scott_Collier-Weir hinted, our recommended approach is to use a Pack to add a new formula to the formula language that retrieves external data, and then use standard built-in action formulas for manipulating the doc (AddRow(), SetControlValue(), etc) to store the retrieved value in the doc.

For example:

AddRow(MyPets, Name, GetRandomCatName())