frame.io developers

Let's get you unblocked.

Most 401s are caused by a handful of issues. Answer the questions below and we'll help narrow it down.

Starting point
Is IMS issuing you a token?
Before troubleshooting the Frame.io API, let's confirm your auth flow is producing a token in the first place.
Check first
Verify your IMS client credentials
If IMS isn't issuing a token, the issue is upstream of the Frame.io API. Double-check your client ID, client secret, and redirect URI, and confirm you're hitting the correct IMS endpoint for your environment.
Still stuck
Check Adobe's IMS docs
IMS is Adobe's auth service, so token issuance issues are best troubleshot in their docs.
Open IMS docs
Step 1 / Scopes
Decode your token and check the scopes
The most common cause of a 401 is requesting the wrong scopes. Decode your JWT to verify.

You can use jwt.io, or run this in your terminal if you'd rather not paste your token into a web app: echo "YOUR_JWT_HERE" | jq -R 'split(".") | .[0:2] | map(@base64d) | map(fromjson)'
Question
Do all of these scopes appear in your token?
offline_access openid email profile additional_info.roles
Quick check
Retry your API call. Did the 401 come back?
Even with all the correct scopes in your token, certain account configurations can still produce a 401. Let's confirm where you are.
Fix
Request the full scope set in your auth flow
Update your OAuth request to include all five scopes: offline_access openid email profile additional_info.roles Re-run your auth flow, then decode the new token to confirm the scopes are present before retrying your API call.
Question
Did that fix the 401?
Try this next
Re-auth without the email scope
Older Frame.io accounts can fail token validation when email is in the scope list. If the rest of your setup looks right, re-auth with this set instead: offline_access openid email profile additional_info.roles
Question
Did that fix the 401?
Step 2 / API explorer
Test a call in the API Reference
Head to the API reference explorer, hit Login, and send a test request.

Important: log in with the same account you've been using for your API requests.
Question
Does the explorer return a successful response?
Narrowing down
Check your token and request format
The explorer working confirms your account has API access. The 401 is coming from something in your own request, usually a stale or expired token, the wrong header format, or the wrong base URL. Check: Authorization: Bearer YOUR_TOKEN_HERE https://api.frame.io/v4/ If your token might be expired, refresh it through your auth flow and retry.
Question
Did fixing the request format resolve it?
Step 3 / Multiple accounts
Does your Adobe ID belong to more than one Frame.io account?
If the explorer is also failing, the next likely cause is that a cached browser session selected the wrong account during your OAuth login step, producing a valid token for an account you didn't intend to use.
Fix
Clear your cache before completing the OAuth login step
Each account you belong to is separate in our system. The correct one must be selected at login to access its workspaces and projects. A cached session will auto-select the last account used, which may not be the right one.

Option A. Clear your browser cache, then complete the OAuth login flow again. You'll be prompted to select an account.

Option B. Open the OAuth flow in a browser you've never used for Frame.io. A fresh session forces account selection.

Once the correct account is selected, it's remembered as the default for subsequent logins.
Question
Did clearing the cache fix the 401?
Resolved
You're unblocked. Nice.
Auth is sorted. The quick start guide will walk you through making your first API requests from here.
Next step
Share your details in the forum
You've ruled out the common causes. To help further, please share:
  • ·The full 401 response body (not just the status code)
  • ·Which endpoint you're calling
  • ·The scopes from your JWT token payload
  • ·Whether this was working before, or is a first-time setup
Tagging your post with 401 and auth makes it easier to find and track.
Open the forum