-
Notifications
You must be signed in to change notification settings - Fork 9
Add outbound application management support to Python SDK #623
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: omercnet <[email protected]>
Co-authored-by: omercnet <[email protected]>
Coverage reportThe coverage rate went from
Diff Coverage details (click to unfold)descope/management/outbound_application.py
descope/mgmt.py
descope/management/common.py
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements comprehensive outbound application management functionality for the Descope Python SDK, enabling management of external OAuth/OIDC providers (like Google, Microsoft, Facebook) that Descope connects to as a client. This provides feature parity with the Node SDK as requested in issue #11531.
- Addition of complete outbound application CRUD operations (create, update, delete, load)
- Implementation of token management functionality for user tokens from external providers
- Integration of 8 new API endpoints and comprehensive test coverage
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| descope/management/outbound_application.py | New management class implementing all outbound application and token operations |
| descope/mgmt.py | Integration of OutboundApplication class into the main MGMT interface |
| descope/management/common.py | Addition of 8 new API endpoint paths for outbound application management |
| tests/management/test_outbound_application.py | Comprehensive test suite covering all functionality with 8 test methods |
| samples/management_outbound_application.py | Practical demonstration script showing real-world usage patterns |
| README.md | Documentation section with complete API examples and usage patterns |
| for app in apps: | ||
| # Do something |
Copilot
AI
Jul 30, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The indentation for this for loop is inconsistent with the rest of the code block. It should be indented at the same level as the previous line to maintain proper Python syntax.
| for app in apps: | |
| # Do something | |
| for app in apps: | |
| # Do something |
|
What is this PR? isnt it a dup of what @gaokevin1 does here: https://github.com/descope/python-sdk/pull/621/files ? |
Oh wow I didn't see this. I guess so... |
|
Closing this PR as it indeed (sort of) a dup of @gaokevin1 PR #621 |
This PR implements comprehensive outbound application management functionality for the Descope Python SDK, achieving feature parity with the Node SDK as requested in issue #11531.
What are Outbound Applications?
Outbound applications are external OAuth/OIDC providers (like Google, Microsoft, Facebook) that Descope connects to as a client. This is the reverse of inbound SSO applications - instead of other apps connecting to Descope for authentication, these are external services that Descope users can authenticate with.
Implementation
Application Management
create_application()- Create new outbound applications with full OAuth/OIDC configurationupdate_application()- Update existing applicationsdelete_application()- Delete applicationsload_application()- Get single application by IDload_all_applications()- Get all applicationsToken Management
fetch_outbound_app_user_token()- Fetch user tokens from outbound applicationsdelete_outbound_app_token_by_id()- Delete specific tokensdelete_outbound_app_user_tokens()- Delete all user tokens for an appUsage Example
Key Features
Files Changed
descope/management/common.py- Added 8 new API endpoint pathsdescope/management/outbound_application.py- New management class (353 lines)descope/mgmt.py- Integrated into MGMT classtests/management/test_outbound_application.py- Comprehensive test suite (431 lines)README.md- Added documentation section with examplessamples/management_outbound_application.py- Practical demonstration scriptTesting
All 283 tests pass, including 8 comprehensive new tests covering:
This implementation provides complete feature parity with the Node SDK's outbound application capabilities, enabling Python developers to easily manage OAuth/OIDC integrations with external providers through Descope.
This pull request was created as a result of the following prompt from Copilot chat.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.