publish_app
Publish an app YOU own, on a paid plan: on Free an app stays private and this answers 402 plan_required with the upgrade link. Two ways to publish: "public" gives it a tile in the autario app store on its own shelf (social next to Social 360, public data next to the World Bank and FRED data surfaces), credited to you, plus a public URL, "unlisted" gives it only the URL, so anyone you send the link to can open it and nobody else finds it. Every publish runs a content check first and refuses, naming the rule and the line, an external script, an embedded frame, a form posting elsewhere, a redirect, an advertising or affiliate link, hidden text, or text aimed at AI agents in the name, tagline or manifest. Both unlisted and public then pass ONE AI content review per content version (text and code), synchronously, and both need a shelf first (create_app or update_app_manifest with shelf, else 422 shelf_required with the allowed ids), a public listing needs the app hosted on autario (upload_app_bundle): a block returns the reasons (edit the app and publish again), review_unavailable means try again later. Returns public_url. Viewers read data through autario.js with their own role: a stranger sees public catalog data only, a team member the owner invited to the app (Account > Team) sees the datasets the app declares. Note that a published app is deliberately NOT search-engine indexed; only autario can put a community app into the sitemap. Use it when the user says the app is ready to share. unpublish_app reverses it and is never refused.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| app_id | Yes | Id of an app you own, as returned by create_app. An app you do not own answers not found. | |
| visibility | No | "public" = listed in the app store. "unlisted" = link only. Default "public". |