Marketplace
Marketplace
Section titled “Marketplace”The Sencai marketplace is a catalog of third-party apps you can deploy straight onto your own cloud instances. Every app that appears in the public catalog has already passed an automated security scan and a manual review by the Sencai team — you’re never deploying an unvetted container image through the marketplace flow.
Anyone can browse the public catalog, signed in or not. Deploying an app, and publishing your own, requires an account and (for publishing) an admin role in the organisation you publish under.
Browsing the catalog
Section titled “Browsing the catalog”Open Marketplace in the navigation (/gravity/marketplace). You’ll see three tabs, though which ones are visible depends on who you are:
| Tab | Who sees it | What it shows |
|---|---|---|
| Apps | Everyone | The public catalog — approved apps only, from any publisher |
| My submissions | Signed-in users | Every app your own organisation(s) have submitted, at any stage (draft, pending review, approved, rejected, suspended) |
| Pending review | Sencai platform admins only | Every app currently awaiting a review decision, across all publishers |
Use the search box to filter by name or description. Each app card shows its icon, publisher organisation, and (outside the plain “Apps” tab) its current status.
Click any app to open its detail page — the full description, and (if you’re the publisher or a platform admin) the image reference and revenue-share fee.
Deploying a marketplace app
Section titled “Deploying a marketplace app”Only approved apps show a Deploy button, on the app’s detail page.
Deploy doesn’t provision anything by itself — it pre-fills the standard new cloud instance wizard with whatever the app’s publisher configured (provider, region, instance type, disk size, tags, and a startup script), so you land on the exact same wizard you’d use to create any other instance, just with fields already filled in:
- Open the app’s detail page and click Deploy.
- You’re taken to the New instance wizard with the app’s image, suggested provider/region/instance type, disk size, and any extra tags or startup commands already filled in.
- Review every field — nothing is provisioned until you complete the wizard yourself. Adjust anything the publisher pre-filled if it doesn’t match what you need (a different region or a bigger disk, for example).
- Finish the wizard as usual to create the instance.
Not every field the publisher configured is guaranteed to make it in unchanged (for example, a suggested instance type or region only applies if it’s actually available for the provider you end up choosing) — treat the pre-fill as a helpful starting point, not a locked configuration, and double-check before you create the instance.
Becoming a publisher
Section titled “Becoming a publisher”Publishing an app means submitting it for security scanning and manual review before it can appear in the public catalog. You need an Admin (or Owner) role in the organisation you’re publishing under.
Submitting an app
Section titled “Submitting an app”- Click Submit an app from the Marketplace page.
- Pick the organisation you’re publishing under (only organisations where you have an admin role will actually be allowed to submit — you’ll still be able to select others, but submission for them will be rejected on the server).
- Fill in:
- Name and Description
- Image reference — the container image, in
registry/namespace/name:tagformat (a barenginx:latest-style reference and a fully qualifiedghcr.io/partner/app:1.2.0are both accepted, but the tag is always required — a reference with no tag is rejected) - Config template (JSON) — the deploy manifest used to pre-fill the instance wizard for anyone who later deploys your app. Recognised optional keys:
provider,region,instance_type,root_disk_gb,additional_disks,tags,env(turned into exported shell variables), andcloud_init(a raw startup script appended after those variables). Every key is optional — leave out anything you don’t need.
- Submit. This both saves your app and immediately puts it up for review — you don’t need a separate “save draft” step first.
Once submitted, your app enters Pending review and can no longer be edited directly — see below.
What happens during review
Section titled “What happens during review”Submitting triggers two things:
- Automated security scan — the app’s container image is scanned for known vulnerabilities. This runs in the background right after you submit; you don’t need to do anything to trigger it.
- Manual review by the Sencai platform team.
An app can only be approved once its image has no unresolved critical or high severity vulnerability findings — this is a hard gate that applies even to the platform team reviewing it. If your submission is blocked for this reason, the app’s detail page lists the specific findings so you know what needs to be addressed (typically by publishing an updated image and resubmitting).
If the scan itself fails to run at all (for example the image reference couldn’t be reached) rather than finding actual vulnerabilities, you’ll see a separate technical notice on the app’s page — that’s distinct from a review rejection and doesn’t by itself block a review decision once the underlying issue is resolved.
Approval, rejection, and suspension
Section titled “Approval, rejection, and suspension”- Approved — your app appears in the public catalog immediately and is available for anyone to deploy.
- Rejected — the reviewer leaves a reason, shown on your app’s detail page. A rejection is a final decision for that submission; if you want to try again, submit a new app once you’ve addressed the reason.
- Suspended — this can only happen to a previously approved app, if it stops meeting platform conditions. A suspended app disappears from the public catalog immediately. Instances that were already deployed from it before the suspension are not affected — suspension only removes the option to deploy it going forward.
Withdrawing a submission
Section titled “Withdrawing a submission”While your app is still pending review (before a decision has been made), you can withdraw it back to draft from the app’s detail page — useful if you spotted a mistake and want to fix it before the reviewer gets to it. You can’t withdraw an app that’s already been approved, rejected, or suspended.
Revenue share
Section titled “Revenue share”Each marketplace app carries a revenue-share fee percentage, visible to you (the publisher) and to platform admins on the app’s detail page. When customers use your app, the platform automatically calculates your share of the resulting billing for each period: the platform’s fee is deducted first, and the rest is your share — the split for any given period is fixed at calculation time and isn’t affected by a later change to the fee percentage.
Actual payout to publishers is currently handled by the Sencai team rather than through an automated in-platform payment — if you’re publishing commercially, reach out to your Sencai contact about the payout process for your organisation.
Troubleshooting
Section titled “Troubleshooting”Q: My app’s Submit button is missing.
A: Submitting requires an Admin (or Owner) role in the organisation you’re publishing under. Ask an Owner/Admin of that organisation to either submit it or grant you that role.
Q: I can’t edit my app anymore after submitting.
A: Once an app is pending review, its content is locked from further edits until a review decision is made. If you need to make changes, withdraw it back to draft first (see above), edit it, and submit again.
Q: My app was rejected — can I fix it and resubmit the same listing?
A: A rejection is final for that specific submission. Address the reviewer’s stated reason and submit a new app listing.
Q: I don’t see the “Pending review” tab.
A: That tab is only visible to Sencai platform admins — it isn’t something an individual publisher organisation can enable for itself.
Q: The Deploy button pre-filled a region/instance type my provider doesn’t actually offer.
A: The wizard falls back to its own defaults for anything the publisher’s configuration doesn’t match — double-check every pre-filled field before finishing the wizard, since the pre-fill is a convenience, not a guarantee.