feat!: Consolidate types to root package with consistent naming#692
Merged
developerkunal merged 2 commits intomainfrom Feb 5, 2026
Merged
feat!: Consolidate types to root package with consistent naming#692developerkunal merged 2 commits intomainfrom
developerkunal merged 2 commits intomainfrom
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #692 +/- ##
==========================================
+ Coverage 20.68% 20.70% +0.01%
==========================================
Files 318 315 -3
Lines 130123 130090 -33
==========================================
+ Hits 26918 26929 +11
+ Misses 101238 101192 -46
- Partials 1967 1969 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
frederikprijck
approved these changes
Feb 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.
2F45
span>You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🔧 Changes
This PR consolidates all types into the root
managementpackage and standardizes naming conventions across the SDK for a better developer experience. While this introduces breaking changes, it simplifies imports and provides consistent, predictable type names.Why These Breaking Changes?
github.com/auth0/go-auth0/v2/management- no more hunting through sub-packagesListFlowsRequestParametersinstead ofFlowsListRequest)New Features
Enhanced Password Authentication Controls:
ConnectionAPIBehaviorEnum- Control whether passwords are required or optional for API authenticationConnectionSignupBehaviorEnum- Control whether password signups are allowed or blockedConnectionPasswordAuthenticationMethod.APIBehavior- New field for API behavior configurationConnectionPasswordAuthenticationMethod.SignupBehavior- New field for signup behavior configurationImproved Proof-of-Possession Configuration:
ResourceServerProofOfPossessionRequiredForEnum- Specify which client types require PoP:public_clients,confidential_clients, orall_clientsResourceServerProofOfPossession.RequiredFor- New granular control over PoP requirementsJob Execution Summaries:
GetJobSummary- New type providing execution statisticsGetJobResponseContent.Summary- Access job execution metrics (failed, updated, inserted, total operations)Self-Service Profile Enhancements:
auth0-samlpandokta-samlpstrategiesType Consolidation (Breaking Changes → Better DX)
Type Consolidation (Breaking Changes → Better DX)
All types have been moved to the root
managementpackage with consistent naming:Flows & Executions - Now follow standard
<Action><Resource>RequestParameterspattern:FlowsListRequest→ListFlowsRequestParameters✨ExecutionsListRequest→ListFlowExecutionsRequestParameters✨ExecutionsGetRequest→GetFlowExecutionRequestParameters✨FlowsListRequestHydrateItem→ListFlowsRequestParametersHydrateEnum✨ExecutionsGetRequestHydrateItem→GetFlowExecutionRequestParametersHydrateEnum✨Actions - Consistent naming with other request types:
DeployActionVersionRequestBodyParams→DeployActionVersionRequestContent✨Attack Protection - Moved from
attackprotectionsub-package tomanagement:attackprotection.UpdateBruteForceSettingsRequestContentMode→management.BruteForceProtectionModeEnum✨attackprotection.UpdateBruteForceSettingsRequestContentShieldsItem→management.BruteForceProtectionShieldsEnum✨Tenant Settings - Moved from
tenantssub-package tomanagement:tenants.UpdateTenantSettingsRequestContentEnabledLocalesItem→management.TenantSettingsSupportedLocalesEnum✨Result: One import (
github.com/auth0/go-auth0/v2/management), consistent naming, easier discovery.Test Improvements
Updated
actions_versions_test.goto follow the project's standard testing pattern:ResetWireMockRequests,VerifyRequestCount)📚 References
🔬 Testing
make lint)make check-vuln)📝 Checklist
Yes, this PR has breaking changes - but they make the SDK significantly better to use. We're consolidating scattered types into one place and fixing inconsistent naming patterns.
The Good News
management,management/flows,management/attackprotection,management/tenantsmanagement- one import to rule them allFlowsListRequestvsExecutionsGetRequest)List<Resource>RequestParameters,Get<Resource>RequestParameters)What You Need to Update
1. Simplify Your Imports
Before - Multiple imports for types:
After - One import for everything:
2. Update Type Names (Following New Consistent Pattern)
Flows - Now consistently named:
Flow Executions:
Action Deployment:
3. Use Consolidated Enums (No More Sub-Package Imports)
Attack Protection:
Tenant Locales:
Quick Migration Steps
github.com/auth0/go-auth0/v2/managementFlowsListRequest→ListFlowsRequestParametersExecutionsListRequest→ListFlowExecutionsRequestParametersExecutionsGetRequest→GetFlowExecutionRequestParametersDeployActionVersionRequestBodyParams→DeployActionVersionRequestContentattackprotection.Updateprefix →management.BruteForceProtectionprefixtenants.UpdateTenantSettingsRequestContentEnabledLocalesItem→management.TenantSettingsSupportedLocalesEnummanagement.and let autocomplete show you all available typesThe result: Cleaner code with fewer imports and more predictable type names.