Experience API¶
Publish Place¶
Publish a place to a Roblox experience. This takes an *.rbxl
file and publishes it to a specific Place ID.
USAGE:
rbxcloud experience publish --filename <FILENAME> --place-id <PLACE_ID> --universe-id <UNIVERSE_ID> --version-type <VERSION_TYPE> --api-key <API_KEY>
OPTIONS:
-a, --api-key <API_KEY> Roblox Open Cloud API Key [env: RBXCLOUD_API_KEY=]
-f, --filename <FILENAME> Filename (full or relative) of the RBXL file
-h, --help Print help information
-p, --place-id <PLACE_ID> Place ID of the experience
-u, --universe-id <UNIVERSE_ID> Universe ID of the experience
-t, --version-type <VERSION_TYPE> Version type [possible values: saved, published]
Example¶
GitHub Action¶
A common practice is to create a CD pipeline to deploy a place automatically. This can be done with GitHub actions. Below is an example GitHub Action workflow. The example assumes that Aftman is being used and that rbxcloud
is listed within the aftman.toml
file.
# Deploy any time code is pushed to the 'main' branch
name: Deploy
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Aftman
uses: ok-nick/setup-aftman@v0
- name: Publish
shell: bash
env:
UID: 123456789 # Universe ID
PID: 123456789 # Place ID
API_KEY: ${{ secrets.key }} # API Key (keep this in your GitHub Repository Secrets)
FILE: my_place.rbxl # Roblox place file (e.g. might have a step before this to build the file with Rojo)
run: rbxcloud experience publish -a "$API_KEY" -u "$UID" -p "$PID" -t published -f "$FILE"