openwrt-iac / uapi / install

Install uapi

The signed APK feed for OpenWrt 25.12+. Run these on your router as root.

Three steps

  1. Trust the feed signing key
    curl -fsSL https://openwrt-iac.github.io/feed/uapi-feed.pub.pem \
        | tee /etc/apk/keys/uapi-feed.pub.pem > /dev/null
  2. Add the feed
    echo 'https://openwrt-iac.github.io/feed/packages/all/uapi/packages.adb' \
        > /etc/apk/repositories.d/uapi.list
    apk update
  3. Install
    apk add uapi

The same feed serves every package under the openwrt-iac org (currently uapi and unbound-uci-ext). Subsequent apk add <package> calls find them without further setup.

What just happened

uapi installed under /usr/share/uapi/, registered /api/v2=/usr/share/uapi/main.uc with uhttpd's main instance, and restarted uhttpd. The token store lives at /etc/config/uapi (a conffile - preserved across upgrades).

Mint a token and try the API:

uapi-token create --name first_token --scope '*:rw'
# (the cleartext token is printed once - copy it)

curl -H "Authorization: Bearer <token>" \
     https://<router>/api/v2/system

Upgrades and rollback

apk upgrade uapi picks up new versions from this feed. The token store is preserved. To pin a specific version: apk add uapi=2.0.0-r1.

Past versions stay on the feed indefinitely - you can downgrade if a release breaks something for your config. See CHANGELOG for per-release breaking-change notes.

Feed contents