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. Pin this exact build with apk add uapi=3.0.0-r1.

What just happened

uapi installed under /usr/share/uapi/, registered /api/v3=/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/v3/system

Upgrades and rollback

apk upgrade uapi picks up new releases from this feed. The token store is preserved across upgrades.

The feed carries the current release only, so a downgrade does not come from it. Use the version selector at the top of this page for an older release's steps; anything other than the current release installs from its GitHub Release. A major bump also moves the API prefix, so crossing one changes the URL your clients call. See CHANGELOG for per-release breaking-change notes.

Feed contents