nextauthjs / nextauthjs/next-auth
Instagram Provider unusable after Instagram Basic Display API EOL (Dec 4, 2024)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 28.4k
- Forks
- 4k
- PR merge metrics
- No merged PRs in 30d
Description
Provider type
Environment
System:
OS: macOS 15.6.1
CPU: (8) arm64 Apple M2
Memory: 109.23 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 24.7.0 - ~/.nodenv/versions/24.7.0/bin/node
Yarn: 1.22.22 - ~/.nodenv/versions/24.7.0/bin/yarn
npm: 11.5.1 - ~/.nodenv/versions/24.7.0/bin/npm
pnpm: 10.15.1 - ~/.nodenv/versions/24.7.0/bin/pnpm
Watchman: 2025.04.28.00 - /opt/homebrew/bin/watchman
Browsers:
Chrome: 140.0.7339.134
Safari: 18.6
npmPackages:
next: 15.5.3 => 15.5.3
next-auth: 5.0.0-beta.29 => 5.0.0-beta.29
react: 19.1.0 => 19.1.0
Reproduction URL
https://github.com/1021ky/daily-coding/tree/main/2025-09-21
Describe the issue
Summary: The built-in Instagram provider (packages/core/src/providers/instagram.ts) depends on the Instagram Basic Display API. Meta announced that the Instagram Basic Display API reached EOL on 2024-12-04 (https://developers.facebook.com/blog/post/2024/09/04/update-on-instagram-basic-display-api/). Because that API is shut down, the endpoints used by the provider are no longer available and the Instagram provider in Auth.js / next-auth is effectively unusable.
Impact: Apps that rely on the built-in Instagram provider will lose Instagram sign-in functionality. The provider file still points at the Basic Display API endpoints, which will return errors or be unreachable after EOL.
How to reproduce
- Configure .env.local
- Start the app
pnpm devand attempt "Sign in with Instagram" in 'http://localhost:3000/api/auth/signin'. - Observe that the OAuth flow fails and I redirected "https://www.instagram.com/oauth/authorize/first_party/error/?message=%E3%83%AA%E3%82%AF%E3%82%A8%E3%82%B9%E3%83%88%E3%81%8C%E7%84%A1%E5%8A%B9%E3%81%A7%E3%81%99%3A%20%E3%83%AA%E3%82%AF%E3%82%A8%E3%82%B9%E3%83%88%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%83%BC%E3%81%8C%E7%84%A1%E5%8A%B9%E3%81%A7%E3%81%99%3A%20Invalid%20platform%20app"
Expected behavior
- As a temporary measure, explicitly state this in the documentation and source code , if Instagram Provider is actually unavailable.
- Permanently, adapt to work with the new API.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with packages/core/src/providers/instagram.ts and reproduce the failure through /api/auth/signin using the linked example and pnpm dev. Review the cited Instagram Basic Display API EOL information and determine whether the provider should document its unavailability or be adapted to the replacement API; done means the supported behavior is explicit and the sign-in flow no longer relies on unavailable endpoints.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nextjs, nodejs, react, typescript
- Domain
- api, authentication
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100