Distribution channels reference
Every distribution channel AppRelay ships with — App Store, Play, Firebase, Vercel, S3, GitHub, npm, Homebrew, Docker, and more — and their parameters.
Last updated 2026-07-02
A distribution channel is a place a build can go. Each channel ships with a built-in recipe and a set of parameters. This is the reference for the channels in the initial library; you attach one or more to a lane as described in Build ≠ Distribute.
Apple platforms
| Channel | Ships to | Notable parameters |
|---|---|---|
appStoreConnect | App Store review / release | ASC API key (as a secret) |
testFlight | TestFlight testers | ASC API key |
macAppStore | Mac App Store | ASC API key |
developerId | Direct distribution (Developer ID + notarization) | signing identity, notarization credentials |
Android
| Channel | Ships to | Notable parameters |
|---|---|---|
playConsole | Google Play | track: internal · closed · open · production |
firebaseAppDist | Firebase App Distribution testers | app id, tester groups |
Web & static hosting
| Channel | Ships to | Notable parameters |
|---|---|---|
vercel | Vercel | project / scope |
netlify | Netlify | site id |
cloudflarePages | Cloudflare Pages | project name |
s3 | Amazon S3 + CloudFront | bucket, distributionId (for cache invalidation) |
rsyncSFTP | Your own server | host, remotePath |
githubPages | GitHub Pages | repo, branch |
Desktop, packages & registries
| Channel | Ships to | Notable parameters |
|---|---|---|
githubReleases | GitHub Releases | repo, tagPattern |
microsoftStore | Microsoft Store | store credentials |
snap · flatpak · appImage | Linux packaging | package metadata |
npm | npm registry | package, access |
homebrew | A Homebrew tap | tap repo, formula |
dockerRegistry | A Docker registry | image, tag |
customShell | Anywhere — you write the steps | your commands |
Parameters, secrets, and recipes
Channel parameters (a Play track, an S3 bucket, a Docker tag) are plain configuration and travel with the project. Anything sensitive — tokens, API keys, service-account JSON — is stored as a secret and referenced by name; see Secrets & encryption. The exact commands a channel runs live in its recipe, which you can duplicate and edit; see Recipes and the template variables reference.
customShell), duplicate its recipe, and edit the steps. Because recipes are data, you're never blocked waiting on a new adapter.