A GitHub Action that deploys your OrbitKit app site — privacy policies, support pages, data deletion pages, app site association files, and more — straight from your CI/CD pipeline.
- uses: OrbitKit-io/OrbitKit-Deploy@v1
with:
api-key: ${{ secrets.ORBITKIT_API_KEY }}
app-id: ${{ vars.ORBITKIT_APP_ID }}- Get your API key from the OrbitKit Dashboard under Settings → API Keys
- Add it as a GitHub secret in your repo: Settings → Secrets → Actions →
ORBITKIT_API_KEY - Add your app ID as a variable: Settings → Variables → Actions →
ORBITKIT_APP_ID
| Input | Required | Description |
|---|---|---|
api-key |
Yes | OrbitKit API key (ok_xxxx). Store as a GitHub secret. |
app-id |
Yes | Your OrbitKit app ID |
api-endpoint |
No | API base URL (default: https://api.orbitkit.io) |
| Output | Description |
|---|---|
site-url |
The deployed site URL |
deployed-at |
Deploy timestamp |
name: Deploy Privacy Policy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: OrbitKit-io/OrbitKit-Deploy@v1
with:
api-key: ${{ secrets.ORBITKIT_API_KEY }}
app-id: ${{ vars.ORBITKIT_APP_ID }}name: Deploy on Policy Update
on:
push:
branches: [main]
paths:
- 'privacy-policy.json'
- 'support-page.json'
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: OrbitKit-io/OrbitKit-Deploy@v1
id: deploy
with:
api-key: ${{ secrets.ORBITKIT_API_KEY }}
app-id: ${{ vars.ORBITKIT_APP_ID }}
- name: Print site URL
run: echo "Deployed to ${{ steps.deploy.outputs.site-url }}"If you need to update policy data before deploying, use the OrbitKit CLI in an earlier step:
jobs:
deploy:
runs-on: ubuntu-latest
env:
ORBITKIT_API_KEY: ${{ secrets.ORBITKIT_API_KEY }}
ORBITKIT_APP_ID: ${{ vars.ORBITKIT_APP_ID }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- name: Update privacy policy
run: npx orbitkit policy set privacy-policy.json
- name: Deploy
uses: OrbitKit-io/OrbitKit-Deploy@v1
with:
api-key: ${{ secrets.ORBITKIT_API_KEY }}
app-id: ${{ vars.ORBITKIT_APP_ID }}- API key as secret: Always store your API key as a GitHub secret, never hardcode it in workflows
- Secret scanning: OrbitKit API keys use the
ok_prefix, which is auto-detected by GitHub secret scanning if accidentally committed - No script injection: All inputs are passed as environment variables, not interpolated in shell commands
Apache License 2.0 © OrbitKit, Inc.