Help us shape the future of Go! Take the 2026 Go Developer Survey

auth0

package
v1.39.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 28, 2026 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DetectionSub is replaced at runtime with baseURL+CallbackPath ("/callback" by default).
	DetectionSub = "DETECTION_SUB"
	// DetectionSubAsBase is replaced at runtime with just the baseURL (no path suffix).
	// Use this for SPA callback/logout URLs where the path is the app root.
	DetectionSubAsBase = "DETECTION_SUB_AS_BASE"
)

Variables

View Source
var (
	Bool         = auth0.Bool
	BoolValue    = auth0.BoolValue
	String       = auth0.String
	StringValue  = auth0.StringValue
	Int          = auth0.Int
	IntValue     = auth0.IntValue
	Float64      = auth0.Float64
	Float64Value = auth0.Float64Value
	Time         = auth0.Time
	TimeValue    = auth0.TimeValue
)

Alias all the helper methods so we can keep just typing `auth0.Bool` and the compiler can autocomplete our internal package.

View Source
var (
	FrameworkBuildTools          map[string][]string
	FrameworkSupportedBuildTools map[string][]string
)

FrameworkBuildTools maps "type:framework" to the sorted list of build-tool variants from QuickstartConfigs (including the "none" sentinel). FrameworkSupportedBuildTools is the same map with "none" stripped, so it only contains frameworks that accept a --build-tool flag.

View Source
var FrameworkBundleIDRequired = map[string]bool{
	"native:flutter":       true,
	"native:react-native":  true,
	"native:android":       true,
	"native:ios-swift":     true,
	"native:ionic-angular": true,
	"native:ionic-react":   true,
	"native:ionic-vue":     true,
	"native:maui":          true,
	"native:dotnet-mobile": true,
}

FrameworkBundleIDRequired lists native frameworks that need a resolved bundle/application ID (for example, "com.example.myapp") during project detection. Keep in sync with DetectProject BundleID assignments.

View Source
var QuickstartConfigs = map[string]AppConfig{

	"spa:react:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy:    FileOutputStrategy{Path: ".env", Format: "dotenv"},
		AudienceVar: "VITE_AUTH0_AUDIENCE",
	},
	"spa:angular:none": {
		EnvValues: map[string]string{
			"domain":   DetectionSub,
			"clientId": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},

		Strategy: FileOutputStrategy{Path: "src/environments/environment.ts", Format: "angular-ts"},
	},
	"spa:vue:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy:    FileOutputStrategy{Path: ".env", Format: "dotenv"},
		AudienceVar: "VITE_AUTH0_AUDIENCE",
	},
	"spa:svelte:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy:    FileOutputStrategy{Path: ".env", Format: "dotenv"},
		AudienceVar: "VITE_AUTH0_AUDIENCE",
	},
	"spa:vanilla-javascript:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy:    FileOutputStrategy{Path: ".env", Format: "dotenv"},
		AudienceVar: "VITE_AUTH0_AUDIENCE",
	},
	"spa:flutter-web:none": {
		EnvValues: map[string]string{
			"domain":   DetectionSub,
			"clientId": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "spa",
			Callbacks:         []string{DetectionSubAsBase},
			AllowedLogoutURLs: []string{DetectionSub},
			WebOrigins:        []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "lib/auth_config.dart", Format: "dart"},
	},

	"regular:nextjs:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_SECRET":        DetectionSub,
			"APP_BASE_URL":        DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy:    FileOutputStrategy{Path: ".env", Format: "dotenv"},
		AudienceVar: "AUTH0_AUDIENCE",
	},
	"regular:nuxt:none": {
		EnvValues: map[string]string{
			"NUXT_AUTH0_DOMAIN":         DetectionSub,
			"NUXT_AUTH0_CLIENT_ID":      DetectionSub,
			"NUXT_AUTH0_CLIENT_SECRET":  DetectionSub,
			"NUXT_AUTH0_SESSION_SECRET": DetectionSub,
			"NUXT_AUTH0_APP_BASE_URL":   DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:fastify:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"SESSION_SECRET":      DetectionSub,
			"APP_BASE_URL":        DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:sveltekit:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_SECRET":        DetectionSub,
			"APP_BASE_URL":        DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},

	"regular:sveltekit:vite": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_SECRET":        DetectionSub,
			"APP_BASE_URL":        DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:express:none": {
		EnvValues: map[string]string{
			"ISSUER_BASE_URL": DetectionSub,
			"CLIENT_ID":       DetectionSub,
			"SECRET":          DetectionSub,
			"BASE_URL":        DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:hono:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":                 DetectionSub,
			"AUTH0_CLIENT_ID":              DetectionSub,
			"AUTH0_CLIENT_SECRET":          DetectionSub,
			"AUTH0_SESSION_ENCRYPTION_KEY": DetectionSub,
			"BASE_URL":                     DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/callback",
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:vanilla-python:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_SECRET":        DetectionSub,
			"AUTH0_REDIRECT_URI":  DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:django:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:vanilla-go:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_CALLBACK_URL":  DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:vanilla-java:maven": {
		EnvValues: map[string]string{
			"com.auth0.domain":       DetectionSub,
			"com.auth0.clientId":     DetectionSub,
			"com.auth0.clientSecret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "src/main/webapp/WEB-INF/web.xml", Format: "webxml"},
	},
	"regular:java-ee:maven": {
		EnvValues: map[string]string{
			"auth0/domain":       DetectionSub,
			"auth0/clientId":     DetectionSub,
			"auth0/clientSecret": DetectionSub,

			"auth0/scope": "openid profile email",
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},

		Strategy: FileOutputStrategy{Path: "src/main/webapp/WEB-INF/web.xml", Format: "javaee-webxml"},
	},
	"regular:spring-boot:maven": {
		EnvValues: map[string]string{
			"okta.oauth2.issuer":        DetectionSub,
			"okta.oauth2.client-id":     DetectionSub,
			"okta.oauth2.client-secret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/login/oauth2/code/okta",
		},
		Strategy: FileOutputStrategy{Path: "src/main/resources/application.yml", Format: "yaml"},
	},

	"regular:spring-boot:gradle": {
		EnvValues: map[string]string{
			"okta.oauth2.issuer":        DetectionSub,
			"okta.oauth2.client-id":     DetectionSub,
			"okta.oauth2.client-secret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/login/oauth2/code/okta",
		},
		Strategy: FileOutputStrategy{Path: "src/main/resources/application.yml", Format: "yaml"},
	},
	"regular:aspnet-mvc:none": {
		EnvValues: map[string]string{
			"Auth0:Domain":       DetectionSub,
			"Auth0:ClientId":     DetectionSub,
			"Auth0:ClientSecret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "appsettings.json", Format: "json"},
	},
	"regular:aspnet-blazor:none": {
		EnvValues: map[string]string{
			"Auth0:Domain":       DetectionSub,
			"Auth0:ClientId":     DetectionSub,
			"Auth0:ClientSecret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "appsettings.json", Format: "json"},
	},
	"regular:aspnet-owin:none": {
		EnvValues: map[string]string{
			"auth0:Domain":       DetectionSub,
			"auth0:ClientId":     DetectionSub,
			"auth0:ClientSecret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "Web.config", Format: "xml"},
	},
	"regular:vanilla-php:composer": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_COOKIE_SECRET": DetectionSub,
			"AUTH0_BASE_URL":      DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:laravel:composer": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
			"AUTH0_COOKIE_SECRET": DetectionSub,
			"AUTH0_BASE_URL":      DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"regular:rails:none": {
		EnvValues: map[string]string{
			"auth0_domain":        DetectionSub,
			"auth0_client_id":     DetectionSub,
			"auth0_client_secret": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/auth/auth0/callback",
		},
		Strategy: FileOutputStrategy{Path: "config/auth0.yml", Format: "rails-yaml"},
	},
	"regular:jhipster:none": {
		EnvValues: map[string]string{
			"SPRING_SECURITY_OAUTH2_CLIENT_PROVIDER_OIDC_ISSUER_URI":        DetectionSub,
			"SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_OIDC_CLIENT_ID":     DetectionSub,
			"SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_OIDC_CLIENT_SECRET": DetectionSub,
			"JHIPSTER_SECURITY_OAUTH2_AUDIENCE":                             DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "regular_web",
			Callbacks:         []string{DetectionSub},
			AllowedLogoutURLs: []string{DetectionSub},
			Name:              DetectionSub,
			CallbackPath:      "/login/oauth2/code/oidc",
		},
		Strategy: FileOutputStrategy{Path: ".auth0.env", Format: "dotenv"},
	},

	"native:flutter:none": {
		EnvValues: map[string]string{
			"domain":   DetectionSub,
			"clientId": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "lib/auth_config.dart", Format: "dart"},
	},
	"native:react-native:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":    DetectionSub,
			"AUTH0_CLIENT_ID": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"native:expo:none": {
		EnvValues: map[string]string{
			"EXPO_PUBLIC_AUTH0_DOMAIN":    DetectionSub,
			"EXPO_PUBLIC_AUTH0_CLIENT_ID": DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{"exp://localhost:19000"},
			AllowedLogoutURLs: []string{"exp://localhost:19000"},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"native:ionic-angular:none": {
		EnvValues: map[string]string{
			"domain":   DetectionSub,
			"clientId": DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{"http://localhost"},
			AllowedLogoutURLs: []string{"http://localhost"},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "src/environments/environment.ts", Format: "ts"},
	},
	"native:ionic-react:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{"http://localhost"},
			AllowedLogoutURLs: []string{"http://localhost"},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"native:ionic-vue:vite": {
		EnvValues: map[string]string{
			"VITE_AUTH0_DOMAIN":    DetectionSub,
			"VITE_AUTH0_CLIENT_ID": DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{"http://localhost"},
			AllowedLogoutURLs: []string{"http://localhost"},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
	"native:dotnet-mobile:none": {
		EnvValues: map[string]string{
			"Auth0:Domain":   DetectionSub,
			"Auth0:ClientId": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "appsettings.json", Format: "json"},
	},
	"native:maui:none": {
		EnvValues: map[string]string{
			"Auth0:Domain":   DetectionSub,
			"Auth0:ClientId": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "appsettings.json", Format: "json"},
	},
	"native:wpf-winforms:none": {
		EnvValues: map[string]string{
			"Auth0:Domain":   DetectionSub,
			"Auth0:ClientId": DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{"http://localhost"},
			AllowedLogoutURLs: []string{"http://localhost"},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "appsettings.json", Format: "json"},
	},

	"native:android:gradle": {
		EnvValues: map[string]string{
			"com_auth0_domain":    DetectionSub,
			"com_auth0_client_id": DetectionSub,

			"com_auth0_scheme": "https",
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "app/src/main/res/values/strings.xml", Format: "android-strings"},
	},
	"native:ios-swift:none": {
		EnvValues: map[string]string{
			"ClientId": DetectionSub,
			"Domain":   DetectionSub,
		},

		RequestParams: RequestParams{
			AppType:           "native",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: "Auth0.plist", Format: "plist"},
	},

	"m2m:none:none": {
		EnvValues: map[string]string{
			"AUTH0_DOMAIN":        DetectionSub,
			"AUTH0_CLIENT_ID":     DetectionSub,
			"AUTH0_CLIENT_SECRET": DetectionSub,
		},
		RequestParams: RequestParams{
			AppType:           "non_interactive",
			Callbacks:         []string{},
			AllowedLogoutURLs: []string{},
			Name:              DetectionSub,
		},
		Strategy: FileOutputStrategy{Path: ".env", Format: "dotenv"},
	},
}

Functions

func Error added in v0.6.1

func Error(e error, message string) error

func FrameworkBuildToolRequired added in v1.31.0

func FrameworkBuildToolRequired(typeFramework string) bool

FrameworkBuildToolRequired reports whether a "type:framework" key requires --build-tool, i.e. is present in FrameworkSupportedBuildTools.

func IsBundleIDRequired added in v1.31.0

func IsBundleIDRequired(typeFramework string) bool

IsBundleIDRequired reports whether a "type:framework" key needs a native bundle / application identifier resolved during project detection or setup.

Types

type API

type API struct {
	Action               ActionAPI
	Anomaly              AnomalyAPI
	AttackProtection     AttackProtectionAPI
	Branding             BrandingAPI
	BrandingTheme        BrandingThemeAPI
	Client               ClientAPI
	Connection           ConnectionAPI
	CustomDomain         CustomDomainAPI
	EmailTemplate        EmailTemplateAPI
	EmailProvider        EmailProviderAPI
	EventStream          EventStreamAPI
	Flow                 FlowAPI
	FlowVaultConnection  FlowVaultConnectionAPI
	Log                  LogAPI
	LogStream            LogStreamAPI
	Organization         OrganizationAPI
	NetworkACL           NetworkACLAPI
	Prompt               PromptAPI
	ResourceServer       ResourceServerAPI
	Role                 RoleAPI
	Rule                 RuleAPI
	Tenant               TenantAPI
	TokenExchange        TokenExchangeAPI
	User                 UserAPI
	Jobs                 JobsAPI
	SelfServiceProfile   SelfServiceProfileAPI
	UserAttributeProfile UserAttributeProfilesAPI

	HTTPClient HTTPClientAPI
}

API mimics `management.Management`s general interface, except it refers to the interfaces instead of the concrete structs.

func NewAPI

func NewAPI(m *management.Management) *API

type APIV3 added in v1.33.0

type APIV3 struct {
	AttackProtectionBotDetection AttackProtectionBotDetectionAPIV3
	ClientGrant                  ClientGrantAPIV3
	ClientGrantOrganization      ClientGrantOrganizationAPIV3
	Events                       EventsAPIV3
	Form                         FormAPIV3
	Flow                         FlowAPIV3
	FlowExecution                FlowExecutionAPIV3
	FlowVaultConnection          FlowVaultConnectionAPIV3
	PhoneNotificationTemplate    PhoneNotificationTemplateAPI
	Session                      SessionAPIV3
	RefreshToken                 RefreshTokenAPIV3
	UserSession                  UserSessionAPIV3
	UserRefreshToken             UserRefreshTokenAPIV3
	ActionModule                 ActionModuleAPIV3
	ActionModuleVersion          ActionModuleVersionAPIV3
	GuardianPolicy               GuardianPolicyAPIV3
	GuardianEnrollment           GuardianEnrollmentAPIV3
	GuardianFactor               GuardianFactorAPIV3
	GuardianFactorPhone          GuardianFactorPhoneAPIV3
	GuardianFactorSms            GuardianFactorSmsAPIV3
	GuardianFactorPush           GuardianFactorPushAPIV3
	GuardianFactorDuo            GuardianFactorDuoAPIV3
	NetworkACLKey                NetworkACLKeyAPIV3
	Connection                   ConnectionAPIV3
	ConnectionEnabledClient      ConnectionEnabledClientAPIV3
	Experiments                  ExperimentsAPI
	FeatureFlags                 FeatureFlagsAPI
	Variations                   VariationsAPI
	Segments                     SegmentsAPI
	ResourceServerV3             ResourceServerAPIV3
}

func NewAPIV3 added in v1.33.0

func NewAPIV3(m *managementv3.Management) *APIV3

type ActionAPI

type ActionAPI interface {
	// Create a new action.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Actions/post_action
	Create(ctx context.Context, a *management.Action, opts ...management.RequestOption) error

	// Read action details.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Actions/get_action
	Read(ctx context.Context, id string, opts ...management.RequestOption) (*management.Action, error)

	// Update an existing action.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Actions/patch_action
	Update(ctx context.Context, id string, a *management.Action, opts ...management.RequestOption) error

	// Delete an action
	//
	// See: https://auth0.com/docs/api/management/v2#!/Actions/delete_action
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List all actions.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Actions/get_actions
	List(ctx context.Context, opts ...management.RequestOption) (c *management.ActionList, err error)

	// Triggers available.
	//
	// https://auth0.com/docs/api/management/v2/#!/Actions/get_triggers
	Triggers(ctx context.Context, opts ...management.RequestOption) (l *management.ActionTriggerList, err error)

	// Bindings lists the bindings of a trigger.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Actions/get_bindings
	Bindings(ctx context.Context, triggerID string, opts ...management.RequestOption) (bl *management.ActionBindingList, err error)

	// Deploy an action.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Actions/post_deploy_action
	Deploy(ctx context.Context, id string, opts ...management.RequestOption) (v *management.ActionVersion, err error)

	// Versions lists versions of an action.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Actions/get_action_versions
	Versions(ctx context.Context, id string, opts ...management.RequestOption) (c *management.ActionVersionList, err error)
}

type ActionModuleAPIV3 added in v1.33.0

type ActionModuleAPIV3 interface {
	// List retrieves the action modules for the tenant. The results are
	// offset-paginated via the Page/PerPage request parameters.
	//
	// Required scope: `read:actions`.
	List(ctx context.Context, request *managementv3.GetActionModulesRequestParameters, opts ...option.RequestOption) (*ActionModulePage, error)

	// Get retrieves an action module by ID.
	//
	// Required scope: `read:actions`.
	Get(ctx context.Context, id string, opts ...option.RequestOption) (*managementv3.GetActionModuleResponseContent, error)

	// Create a new action module.
	//
	// Required scope: `create:actions`.
	Create(ctx context.Context, request *managementv3.CreateActionModuleRequestContent, opts ...option.RequestOption) (*managementv3.CreateActionModuleResponseContent, error)

	// Update an action module by ID. The module name is immutable and cannot be
	// changed through this endpoint.
	//
	// Required scope: `update:actions`.
	Update(ctx context.Context, id string, request *managementv3.UpdateActionModuleRequestContent, opts ...option.RequestOption) (*managementv3.UpdateActionModuleResponseContent, error)

	// Delete an action module by ID.
	//
	// Required scope: `delete:actions`.
	Delete(ctx context.Context, id string, opts ...option.RequestOption) error

	// ListActions retrieves the actions that use an action module. The results
	// are offset-paginated via the Page/PerPage request parameters.
	//
	// Required scope: `read:actions`.
	ListActions(ctx context.Context, id string, request *managementv3.GetActionModuleActionsRequestParameters, opts ...option.RequestOption) (*ActionModuleActionPage, error)

	// Rollback copies the code, dependencies, and secrets of a past version
	// back into the module's draft.
	//
	// Required scope: `update:actions`.
	Rollback(ctx context.Context, id string, request *managementv3.RollbackActionModuleRequestParameters, opts ...option.RequestOption) (*managementv3.RollbackActionModuleResponseContent, error)
}

ActionModuleAPIV3 is the V3 SDK interface for the /actions/modules endpoint. Action modules are reusable code libraries that actions can import; they are keyed by module ID.

type ActionModuleActionPage added in v1.33.0

ActionModuleActionPage is the paginated response returned by the action module actions list endpoint. It is aliased here for the same reason as ActionModulePage.

type ActionModulePage added in v1.33.0

ActionModulePage is the paginated response returned by the action modules list endpoint. It is aliased here so the mock generator (which cannot parse instantiated generic types) sees a plain named type in the interface.

type ActionModuleVersionAPIV3 added in v1.33.0

type ActionModuleVersionAPIV3 interface {
	// Create publishes the module's current draft as a new immutable version.
	//
	// Required scope: `update:actions`.
	Create(ctx context.Context, id string, opts ...option.RequestOption) (*managementv3.CreateActionModuleVersionResponseContent, error)

	// List retrieves the immutable versions of an action module. The results
	// are offset-paginated via the Page/PerPage request parameters.
	//
	// Required scope: `read:actions`.
	List(ctx context.Context, id string, request *managementv3.GetActionModuleVersionsRequestParameters, opts ...option.RequestOption) (*ActionModuleVersionPage, error)

	// Get retrieves a specific immutable version of an action module.
	//
	// Required scope: `read:actions`.
	Get(ctx context.Context, id string, versionID string, opts ...option.RequestOption) (*managementv3.GetActionModuleVersionResponseContent, error)
}

ActionModuleVersionAPIV3 is the V3 SDK interface for the /actions/modules/{id}/versions endpoint. Publishing a module creates a new immutable version from its current draft.

type ActionModuleVersionPage added in v1.33.0

ActionModuleVersionPage is the paginated response returned by the action module versions list endpoint. It is aliased here for the same reason as ActionModulePage.

type AnomalyAPI added in v0.7.0

type AnomalyAPI interface {
	// Check if a given IP address is blocked via the multiple user accounts
	// trigger due to multiple failed logins.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Anomaly/get_ips_by_id
	CheckIP(ctx context.Context, ip string, opts ...management.RequestOption) (isBlocked bool, err error)

	// Unblock an IP address currently blocked by the multiple user accounts
	// trigger due to multiple failed logins.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Anomaly/delete_ips_by_id
	UnblockIP(ctx context.Context, ip string, opts ...management.RequestOption) (err error)
}

type AppConfig added in v1.31.0

type AppConfig struct {
	EnvValues     map[string]string
	RequestParams RequestParams
	Strategy      FileOutputStrategy
	// AudienceVar is the env variable name to add when --api is also specified.
	// It receives the API identifier (audience URL) as its value.
	// Leave empty for frameworks where the audience is not configured via an env file.
	AudienceVar string
}

type AttackProtectionAPI added in v0.11.7

type AttackProtectionAPI interface {
	// GetBreachedPasswordDetection retrieves breached password detection settings.
	//
	// Required scope: `read:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/get_breached_password_detection
	GetBreachedPasswordDetection(ctx context.Context,
		opts ...management.RequestOption,
	) (bpd *management.BreachedPasswordDetection, err error)

	// UpdateBreachedPasswordDetection updates the breached password detection settings.
	//
	// Required scope: `update:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/patch_breached_password_detection
	UpdateBreachedPasswordDetection(
		ctx context.Context, bpd *management.BreachedPasswordDetection,
		opts ...management.RequestOption,
	) (err error)

	// GetBruteForceProtection retrieves the brute force configuration.
	//
	// Required scope: `read:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/get_brute_force_protection
	GetBruteForceProtection(
		ctx context.Context, opts ...management.RequestOption,
	) (bfp *management.BruteForceProtection, err error)

	// UpdateBruteForceProtection updates the brute force configuration.
	//
	// Required scope: `update:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/patch_brute_force_protection
	UpdateBruteForceProtection(
		ctx context.Context, bfp *management.BruteForceProtection,
		opts ...management.RequestOption,
	) (err error)

	// GetSuspiciousIPThrottling retrieves the suspicious IP throttling configuration.
	//
	// Required scope: `read:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/get_suspicious_ip_throttling
	GetSuspiciousIPThrottling(
		ctx context.Context, opts ...management.RequestOption,
	) (sit *management.SuspiciousIPThrottling, err error)

	// UpdateSuspiciousIPThrottling updates the suspicious IP throttling configuration.
	//
	// Required scope: `update:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/Attack_Protection/patch_suspicious_ip_throttling
	UpdateSuspiciousIPThrottling(
		ctx context.Context, sit *management.SuspiciousIPThrottling,
		opts ...management.RequestOption,
	) (err error)
}

type AttackProtectionBotDetectionAPIV3 added in v1.33.0

type AttackProtectionBotDetectionAPIV3 interface {
	// Get the Bot Detection configuration of tenant.
	//
	// Required scope: `read:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/attack-protection/get-bot-detection
	Get(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetBotDetectionSettingsResponseContent, error)

	// Update the Bot Detection configuration of tenant.
	//
	// Required scope: `update:attack_protection`
	//
	// See: https://auth0.com/docs/api/management/v2#!/attack-protection/patch-bot-detection
	Update(ctx context.Context, request *managementv3.UpdateBotDetectionSettingsRequestContent, opts ...option.RequestOption) (*managementv3.UpdateBotDetectionSettingsResponseContent, error)
}

type BrandingAPI added in v0.6.0

type BrandingAPI interface {
	Read(ctx context.Context, opts ...management.RequestOption) (b *management.Branding, err error)
	Update(ctx context.Context, t *management.Branding, opts ...management.RequestOption) (err error)
	UniversalLogin(ctx context.Context, opts ...management.RequestOption) (ul *management.BrandingUniversalLogin, err error)
	SetUniversalLogin(ctx context.Context, ul *management.BrandingUniversalLogin, opts ...management.RequestOption) (err error)
	DeleteUniversalLogin(ctx context.Context, opts ...management.RequestOption) (err error)
	ListPhoneProviders(ctx context.Context, opts ...management.RequestOption) (pps *management.BrandingPhoneProviderList, err error)
	ReadPhoneProvider(ctx context.Context, id string, opts ...management.RequestOption) (pp *management.BrandingPhoneProvider, err error)
	CreatePhoneProvider(ctx context.Context, pp *management.BrandingPhoneProvider, opts ...management.RequestOption) (err error)
	DeletePhoneProvider(ctx context.Context, id string, opts ...management.RequestOption) (err error)
	UpdatePhoneProvider(ctx context.Context, id string, pp *management.BrandingPhoneProvider, opts ...management.RequestOption) (err error)
}

type BrandingThemeAPI added in v1.2.0

type BrandingThemeAPI interface {
	Default(ctx context.Context, opts ...management.RequestOption) (theme *management.BrandingTheme, err error)
	Create(ctx context.Context, theme *management.BrandingTheme, opts ...management.RequestOption) (err error)
	Read(ctx context.Context, id string, opts ...management.RequestOption) (theme *management.BrandingTheme, err error)
	Update(ctx context.Context, id string, theme *management.BrandingTheme, opts ...management.RequestOption) (err error)
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)
}

type ClientAPI

type ClientAPI interface {
	// Create a new client application.
	Create(ctx context.Context, c *management.Client, opts ...management.RequestOption) (err error)

	// Read a client by its id.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (c *management.Client, err error)

	// List all client applications.
	List(ctx context.Context, opts ...management.RequestOption) (c *management.ClientList, err error)

	// Update a client.
	Update(ctx context.Context, id string, c *management.Client, opts ...management.RequestOption) (err error)

	// RotateSecret rotates a client secret.
	RotateSecret(ctx context.Context, id string, opts ...management.RequestOption) (c *management.Client, err error)

	// Delete a client and all its related assets (like rules, connections, etc)
	// given its id.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error
}

type ClientGrantAPIV3 added in v1.33.0

type ClientGrantAPIV3 interface {
	// List client grants, including the scopes associated with the application/API pair.
	//
	// Required scope: `read:client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/get-client-grants
	List(
		ctx context.Context,
		request *managementv3.ListClientGrantsRequestParameters,
		opts ...option.RequestOption,
	) (*ClientGrantPage, error)

	// Create a client grant, authorizing a client for the specified API (audience).
	//
	// Required scope: `create:client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/post-client-grants
	Create(
		ctx context.Context,
		request *managementv3.CreateClientGrantRequestContent,
		opts ...option.RequestOption,
	) (*managementv3.CreateClientGrantResponseContent, error)

	// Get a single client grant, including the scopes associated with the application/API pair.
	//
	// Required scope: `read:client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/get-client-grants-by-id
	Get(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) (*managementv3.GetClientGrantResponseContent, error)

	// Update a client grant. The client_id and audience of a grant cannot be changed.
	//
	// Required scope: `update:client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/patch-client-grants-by-id
	Update(
		ctx context.Context,
		id string,
		request *managementv3.UpdateClientGrantRequestContent,
		opts ...option.RequestOption,
	) (*managementv3.UpdateClientGrantResponseContent, error)

	// Delete a client grant.
	//
	// Required scope: `delete:client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/delete-client-grants-by-id
	Delete(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) error
}

ClientGrantAPIV3 is the interface for the /client-grants endpoint.

type ClientGrantOrganizationAPIV3 added in v1.33.0

type ClientGrantOrganizationAPIV3 interface {
	// List the organizations associated with a client grant.
	//
	// Required scope: `read:organization_client_grants`
	//
	// See: https://auth0.com/docs/api/management/v2/client-grants/get-client-grant-organizations
	List(
		ctx context.Context,
		id string,
		request *managementv3.ListClientGrantOrganizationsRequestParameters,
		opts ...option.RequestOption,
	) (*ClientGrantOrganizationPage, error)
}

ClientGrantOrganizationAPIV3 is the interface for the /client-grants/{id}/organizations endpoint.

type ClientGrantOrganizationPage added in v1.33.0

ClientGrantOrganizationPage is the paginated response returned by the client-grant organizations endpoint. It is aliased here so the mock generator (which cannot parse instantiated generic types) sees a plain named type in the interface.

type ClientGrantPage added in v1.33.0

ClientGrantPage is the paginated response returned by the client-grants list endpoint. It is aliased here so the mock generator (which cannot parse instantiated generic types) sees a plain named type in the interface.

type ConnectionAPI added in v0.7.0

type ConnectionAPI interface {

	// Create a new connection.
	Create(ctx context.Context, c *management.Connection, opts ...management.RequestOption) (err error)

	// Read retrieves a connection by its id.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (c *management.Connection, err error)

	// ReadByName retrieves a connection by its name.
	ReadByName(ctx context.Context, id string, opts ...management.RequestOption) (c *management.Connection, err error)

	// Update a connection.
	Update(ctx context.Context, id string, c *management.Connection, opts ...management.RequestOption) (err error)

	// Delete a connection.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)

	// List all connections.
	List(ctx context.Context, opts ...management.RequestOption) (ul *management.ConnectionList, err error)

	// ReadEnabledClients retrieves the enabled clients for a connection.
	ReadEnabledClients(ctx context.Context, id string, opts ...management.RequestOption) (c *management.ConnectionEnabledClientList, err error)
}

type ConnectionAPIV3 added in v1.36.0

type ConnectionAPIV3 interface {
	// List connections.
	//
	// Required scope: `read:connections`.
	List(
		ctx context.Context,
		request *managementv3.ListConnectionsQueryParameters,
		opts ...option.RequestOption,
	) (*ConnectionForListPage, error)

	// Delete a connection.
	//
	// Required scope: `delete:connections`.
	Delete(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) error
}

ConnectionAPIV3 is the V3 SDK interface for the /connections endpoint. Create, read, and update go through the raw HTTP client because a connection's options are a large per-strategy union that the typed request models would drop, so only paging and delete live here.

type ConnectionEnabledClientAPIV3 added in v1.36.0

type ConnectionEnabledClientAPIV3 interface {
	// Get the clients that have this connection enabled.
	//
	// Required scope: `read:connections`.
	Get(
		ctx context.Context,
		id string,
		request *managementv3.GetConnectionEnabledClientsRequestParameters,
		opts ...option.RequestOption,
	) (*ConnectionEnabledClientPage, error)

	// Update the enabled clients for this connection.
	//
	// Required scope: `update:connections`.
	Update(
		ctx context.Context,
		id string,
		request managementv3.UpdateEnabledClientConnectionsRequestContent,
		opts ...option.RequestOption,
	) error
}

ConnectionEnabledClientAPIV3 is the V3 SDK interface for the /connections/{id}/clients endpoint, used to read and modify which clients have a connection enabled.

type ConnectionEnabledClientPage added in v1.36.0

ConnectionEnabledClientPage aliases the checkpoint-paginated enabled-clients list response.

type ConnectionForListPage added in v1.36.0

ConnectionForListPage aliases the checkpoint-paginated connections list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type CustomDomainAPI added in v0.6.0

type CustomDomainAPI interface {
	// Create a new custom domain.
	Create(ctx context.Context, c *management.CustomDomain, opts ...management.RequestOption) (err error)

	// Read retrieves a custom domain by its id.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (c *management.CustomDomain, err error)

	// Update a custom domain.
	Update(ctx context.Context, id string, c *management.CustomDomain, opts ...management.RequestOption) (err error)

	// Delete a custom domain.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)

	// Verify a custom domain.
	Verify(ctx context.Context, id string, opts ...management.RequestOption) (c *management.CustomDomain, err error)

	// List all custom domains.
	List(ctx context.Context, opts ...management.RequestOption) (c []*management.CustomDomain, err error)

	// ListWithPagination lists all custom domains with support for pagination.
	ListWithPagination(ctx context.Context, opts ...management.RequestOption) (c *management.CustomDomainList, err error)

	// ReadDefault retrieves the default domain configuration for the tenant.
	ReadDefault(ctx context.Context, opts ...management.RequestOption) (c *management.CustomDomain, err error)

	// UpdateDefault updates the default domain for the tenant.
	UpdateDefault(ctx context.Context, c *management.CustomDomain, opts ...management.RequestOption) error
}

type EmailProviderAPI added in v1.1.2

type EmailProviderAPI interface {
	// Create email provider.
	// See: https://auth0.com/docs/api/management/v2#!/Emails/post_provider
	Create(ctx context.Context, ep *management.EmailProvider, opts ...management.RequestOption) error

	// Update email provider.
	// See: https://auth0.com/docs/api/management/v2#!/Emails/patch_provider
	Update(ctx context.Context, ep *management.EmailProvider, opts ...management.RequestOption) (err error)

	// Read email provider details.
	// See: https://auth0.com/docs/api/management/v2#!/Emails/get_provider
	Read(ctx context.Context, opts ...management.RequestOption) (ep *management.EmailProvider, err error)

	// Delete the email provider.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Emails/delete_provider
	Delete(ctx context.Context, opts ...management.RequestOption) (err error)
}

type EmailTemplateAPI added in v0.9.1

type EmailTemplateAPI interface {
	// Create an email template.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Email_Templates/post_email_templates
	Create(ctx context.Context, template *management.EmailTemplate, opts ...management.RequestOption) error

	// Read an email template by pre-defined name.
	//
	// These names are `verify_email`, `reset_email`, `welcome_email`,
	// `blocked_account`, `stolen_credentials`, `enrollment_email`, and
	// `mfa_oob_code`.
	//
	// The names `change_password`, and `password_reset` are also supported for
	// legacy scenarios.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Email_Templates/get_email_templates_by_templateName
	Read(ctx context.Context, template string, opts ...management.RequestOption) (e *management.EmailTemplate, err error)

	// Update an email template.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Email_Templates/patch_email_templates_by_templateName
	Update(ctx context.Context, template string, e *management.EmailTemplate, opts ...management.RequestOption) (err error)
}

type EventStreamAPI added in v1.9.0

type EventStreamAPI interface {
	// Create a new Event Stream.
	Create(ctx context.Context, e *management.EventStream, opts ...management.RequestOption) error

	// Read Event Stream details.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (e *management.EventStream, err error)

	// Update an existing Event Stream.
	Update(ctx context.Context, id string, e *management.EventStream, opts ...management.RequestOption) error

	// Delete an Event Stream.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List Event Streams.
	List(ctx context.Context, opts ...management.RequestOption) (e *management.EventStreamList, err error)

	// Test triggers a test event on an Event Stream.
	Test(ctx context.Context, id string, testEvent *management.TestEvent, opts ...management.RequestOption) error

	// ReadDelivery returns delivery information for a specific event associated to an Event Stream.
	ReadDelivery(ctx context.Context, streamID, deliveryID string, opts ...management.RequestOption) (ed *management.EventDelivery, err error)

	// ListDeliveries returns delivery attempts for all events associated to an Event Stream.
	ListDeliveries(ctx context.Context, id string, opts ...management.RequestOption) (edl *management.EventDeliveryList, err error)

	// Stats returns event stream statistics.
	Stats(ctx context.Context, id string, opts ...management.RequestOption) (stats *management.EventStreamStats, err error)

	// Redeliver a single failed delivery by ID.
	Redeliver(ctx context.Context, streamID, deliveryID string, opts ...management.RequestOption) error

	// RedeliverMany retries multiple failed deliveries.
	RedeliverMany(ctx context.Context, streamID string, req *management.BulkRedeliverRequest, opts ...management.RequestOption) error
}

type EventsAPIV3 added in v1.33.0

type EventsAPIV3 interface {
	// Subscribe to events via Server-Sent Events (SSE).
	//
	// Required scope: `read:events`
	//
	// See: https://auth0.com/docs/api/management/v2/events/get-events
	Subscribe(
		ctx context.Context,
		request *managementv3.SubscribeEventsRequestParameters,
		opts ...option.RequestOption,
	) (*core.Stream[managementv3.EventStreamSubscribeEventsResponseContent], error)
}

EventsAPIV3 is the V3 SDK interface for the /events endpoint (Server-Sent Event subscription stream).

type ExperimentListPage added in v1.39.0

ExperimentListPage aliases the checkpoint-paginated experiments list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type FeatureFlagListPage added in v1.39.0

FeatureFlagListPage aliases the checkpoint-paginated feature flags list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type FeatureFlagsAPI added in v1.39.0

FeatureFlagsAPI describes the interface for feature flag operations.

type FileOutputStrategy added in v1.31.0

type FileOutputStrategy struct {
	Path   string
	Format string
}

type FlowAPI added in v1.6.0

type FlowAPI interface {
	// Create a new flow.
	Create(ctx context.Context, r *management.Flow, opts ...management.RequestOption) error

	// Read flow details.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (r *management.Flow, err error)

	// Update an existing flow.
	Update(ctx context.Context, id string, r *management.Flow, opts ...management.RequestOption) error

	// Delete a flow.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List flow.
	List(ctx context.Context, opts ...management.RequestOption) (r *management.FlowList, err error)
}

type FlowAPIV3 added in v1.34.0

type FlowAPIV3 interface {
	// List flows.
	//
	// Required scope: `read:flows`.
	List(
		ctx context.Context,
		request *managementv3.ListFlowsRequestParameters,
		opts ...option.RequestOption,
	) (*FlowSummaryPage, error)

	// Delete a flow.
	//
	// Required scope: `delete:flows`.
	Delete(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) error
}

FlowAPIV3 is the V3 SDK interface for the /flows endpoint. Create, read, and update go through the raw HTTP client to preserve the flow action graph that the typed request models would drop, so only paging and delete live here.

type FlowExecutionAPIV3 added in v1.34.0

type FlowExecutionAPIV3 interface {
	// List flow executions.
	//
	// Required scope: `read:flows_executions`.
	List(
		ctx context.Context,
		flowID string,
		request *managementv3.ListFlowExecutionsRequestParameters,
		opts ...option.RequestOption,
	) (*FlowExecutionSummaryPage, error)

	// Delete a flow execution.
	//
	// Required scope: `delete:flows_executions`.
	Delete(
		ctx context.Context,
		flowID string,
		executionID string,
		opts ...option.RequestOption,
	) error
}

FlowExecutionAPIV3 is the V3 SDK interface for the /flows/{id}/executions endpoint. Executions are runtime-produced, so the surface is read and delete only.

type FlowExecutionSummaryPage added in v1.34.0

FlowExecutionSummaryPage aliases the paginated flow-executions list response.

type FlowSummaryPage added in v1.34.0

FlowSummaryPage aliases the paginated flows list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type FlowVaultConnectionAPI added in v1.6.0

type FlowVaultConnectionAPI interface {
	// CreateConnection Create a new flow vault connection.
	CreateConnection(ctx context.Context, r *management.FlowVaultConnection, opts ...management.RequestOption) error

	// GetConnection Retrieve flow vault connection details.
	GetConnection(ctx context.Context, id string, opts ...management.RequestOption) (r *management.FlowVaultConnection, err error)

	// UpdateConnection Update an existing flow vault connection.
	UpdateConnection(ctx context.Context, id string, r *management.FlowVaultConnection, opts ...management.RequestOption) error

	// DeleteConnection Delete a flow vault connection.
	DeleteConnection(ctx context.Context, id string, opts ...management.RequestOption) error

	// GetConnectionList List flow vault connections.
	GetConnectionList(ctx context.Context, opts ...management.RequestOption) (r *management.FlowVaultConnectionList, err error)
}

type FlowVaultConnectionAPIV3 added in v1.34.0

type FlowVaultConnectionAPIV3 interface {
	// List vault connections.
	//
	// Required scope: `read:flows_vault_connections`.
	List(
		ctx context.Context,
		request *managementv3.ListFlowsVaultConnectionsRequestParameters,
		opts ...option.RequestOption,
	) (*FlowsVaultConnectionSummaryPage, error)

	// Delete a vault connection.
	//
	// Required scope: `delete:flows_vault_connections`.
	Delete(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) error
}

FlowVaultConnectionAPIV3 is the V3 SDK interface for the /flows/vault/connections endpoint. Create and update go through the raw HTTP client because the typed request model is a large per-provider union, so only paging and delete live here.

type FlowsVaultConnectionSummaryPage added in v1.34.0

FlowsVaultConnectionSummaryPage aliases the paginated vault-connections list response.

type FormAPIV3 added in v1.35.0

type FormAPIV3 interface {
	// List forms.
	//
	// Required scope: `read:forms`.
	List(
		ctx context.Context,
		request *managementv3.ListFormsRequestParameters,
		opts ...option.RequestOption,
	) (*FormSummaryPage, error)

	// Get retrieves a form by its ID.
	//
	// Required scope: `read:forms`.
	Get(
		ctx context.Context,
		id string,
		request *managementv3.GetFormRequestParameters,
		opts ...option.RequestOption,
	) (*managementv3.GetFormResponseContent, error)

	// Delete a form.
	//
	// Required scope: `delete:forms`.
	Delete(
		ctx context.Context,
		id string,
		opts ...option.RequestOption,
	) error
}

FormAPIV3 is the V3 SDK interface for the /forms endpoint.

type FormSummaryPage added in v1.35.0

FormSummaryPage aliases the paginated forms list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type GuardianEnrollmentAPIV3 added in v1.36.0

type GuardianEnrollmentAPIV3 interface {
	// CreateTicket creates an MFA enrollment ticket for a user and, optionally,
	// emails it to them.
	//
	// Required scope: `create:guardian_enrollment_tickets`.
	CreateTicket(ctx context.Context, request *managementv3.CreateGuardianEnrollmentTicketRequestContent, opts ...option.RequestOption) (*managementv3.CreateGuardianEnrollmentTicketResponseContent, error)

	// Get retrieves details for a single MFA enrollment by ID.
	//
	// Required scope: `read:guardian_enrollments`.
	Get(ctx context.Context, id string, opts ...option.RequestOption) (*managementv3.GetGuardianEnrollmentResponseContent, error)

	// Delete removes a single MFA enrollment, allowing the user to re-enroll.
	//
	// Required scope: `delete:guardian_enrollments`.
	Delete(ctx context.Context, id string, opts ...option.RequestOption) error
}

GuardianEnrollmentAPIV3 is the V3 SDK interface for multi-factor authentication (MFA) enrollments (/guardian/enrollments).

type GuardianFactorAPIV3 added in v1.36.0

type GuardianFactorAPIV3 interface {
	// List retrieves all MFA factors and their enabled/disabled status.
	//
	// Required scope: `read:guardian_factors`.
	List(ctx context.Context, opts ...option.RequestOption) ([]*managementv3.GuardianFactor, error)

	// Set enables or disables a single MFA factor.
	//
	// Required scope: `update:guardian_factors`.
	Set(ctx context.Context, name *managementv3.GuardianFactorNameEnum, request *managementv3.SetGuardianFactorRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorResponseContent, error)
}

GuardianFactorAPIV3 is the V3 SDK interface for enabling and disabling multi-factor authentication (MFA) factors (/guardian/factors).

type GuardianFactorDuoAPIV3 added in v1.36.0

type GuardianFactorDuoAPIV3 interface {
	// Get retrieves the Duo settings.
	Get(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorDuoSettingsResponseContent, error)

	// Set replaces the Duo settings.
	Set(ctx context.Context, request *managementv3.SetGuardianFactorDuoSettingsRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorDuoSettingsResponseContent, error)

	// Update partially updates the Duo settings.
	Update(ctx context.Context, request *managementv3.UpdateGuardianFactorDuoSettingsRequestContent, opts ...option.RequestOption) (*managementv3.UpdateGuardianFactorDuoSettingsResponseContent, error)
}

GuardianFactorDuoAPIV3 is the V3 SDK interface for the Duo MFA factor settings (/guardian/factors/duo/settings).

Required scopes: `read:guardian_factors` for reads, `update:guardian_factors` for writes.

type GuardianFactorPhoneAPIV3 added in v1.36.0

type GuardianFactorPhoneAPIV3 interface {
	// GetSelectedProvider retrieves the configured phone provider.
	GetSelectedProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderPhoneResponseContent, error)

	// SetProvider sets the phone provider.
	SetProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPhoneRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderPhoneResponseContent, error)

	// GetMessageTypes retrieves the enabled phone message types (sms/voice).
	GetMessageTypes(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorPhoneMessageTypesResponseContent, error)

	// SetMessageTypes sets the enabled phone message types (sms/voice).
	SetMessageTypes(ctx context.Context, request *managementv3.SetGuardianFactorPhoneMessageTypesRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorPhoneMessageTypesResponseContent, error)

	// GetTemplates retrieves the phone enrollment and verification templates.
	GetTemplates(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorPhoneTemplatesResponseContent, error)

	// SetTemplates sets the phone enrollment and verification templates.
	SetTemplates(ctx context.Context, request *managementv3.SetGuardianFactorPhoneTemplatesRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorPhoneTemplatesResponseContent, error)

	// GetTwilioProvider retrieves the Twilio configuration for the phone factor.
	GetTwilioProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderPhoneTwilioResponseContent, error)

	// SetTwilioProvider sets the Twilio configuration for the phone factor.
	SetTwilioProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPhoneTwilioRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderPhoneTwilioResponseContent, error)
}

GuardianFactorPhoneAPIV3 is the V3 SDK interface for the phone MFA factor configuration (/guardian/factors/phone).

Required scopes: `read:guardian_factors` for reads, `update:guardian_factors` for writes.

type GuardianFactorPushAPIV3 added in v1.36.0

type GuardianFactorPushAPIV3 interface {
	// GetSelectedProvider retrieves the configured push-notification provider.
	GetSelectedProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderPushNotificationResponseContent, error)

	// SetProvider sets the push-notification provider.
	SetProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPushNotificationRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderPushNotificationResponseContent, error)

	// GetApnsProvider retrieves the Apple APNs configuration.
	GetApnsProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderApnsResponseContent, error)

	// SetApnsProvider replaces the Apple APNs configuration.
	SetApnsProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPushNotificationApnsRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderPushNotificationApnsResponseContent, error)

	// UpdateApnsProvider partially updates the Apple APNs configuration.
	UpdateApnsProvider(ctx context.Context, request *managementv3.UpdateGuardianFactorsProviderPushNotificationApnsRequestContent, opts ...option.RequestOption) (*managementv3.UpdateGuardianFactorsProviderPushNotificationApnsResponseContent, error)

	// SetFcmProvider replaces the Google FCM (legacy) configuration.
	SetFcmProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPushNotificationFcmRequestContent, opts ...option.RequestOption) (managementv3.SetGuardianFactorsProviderPushNotificationFcmResponseContent, error)

	// UpdateFcmProvider partially updates the Google FCM (legacy) configuration.
	UpdateFcmProvider(ctx context.Context, request *managementv3.UpdateGuardianFactorsProviderPushNotificationFcmRequestContent, opts ...option.RequestOption) (managementv3.UpdateGuardianFactorsProviderPushNotificationFcmResponseContent, error)

	// SetFcmv1Provider replaces the Google FCM v1 configuration.
	SetFcmv1Provider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPushNotificationFcmv1RequestContent, opts ...option.RequestOption) (managementv3.SetGuardianFactorsProviderPushNotificationFcmv1ResponseContent, error)

	// UpdateFcmv1Provider partially updates the Google FCM v1 configuration.
	UpdateFcmv1Provider(ctx context.Context, request *managementv3.UpdateGuardianFactorsProviderPushNotificationFcmv1RequestContent, opts ...option.RequestOption) (managementv3.UpdateGuardianFactorsProviderPushNotificationFcmv1ResponseContent, error)

	// GetSnsProvider retrieves the Amazon SNS configuration.
	GetSnsProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderSnsResponseContent, error)

	// SetSnsProvider replaces the Amazon SNS configuration.
	SetSnsProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderPushNotificationSnsRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderPushNotificationSnsResponseContent, error)

	// UpdateSnsProvider partially updates the Amazon SNS configuration.
	UpdateSnsProvider(ctx context.Context, request *managementv3.UpdateGuardianFactorsProviderPushNotificationSnsRequestContent, opts ...option.RequestOption) (*managementv3.UpdateGuardianFactorsProviderPushNotificationSnsResponseContent, error)
}

GuardianFactorPushAPIV3 is the V3 SDK interface for the push-notification MFA factor configuration (/guardian/factors/push-notification), including its APNs, FCM, FCM v1 and SNS providers.

Required scopes: `read:guardian_factors` for reads, `update:guardian_factors` for writes.

type GuardianFactorSmsAPIV3 added in v1.36.0

type GuardianFactorSmsAPIV3 interface {
	// GetSelectedProvider retrieves the configured SMS provider.
	GetSelectedProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderSmsResponseContent, error)

	// SetProvider sets the SMS provider.
	SetProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderSmsRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderSmsResponseContent, error)

	// GetTemplates retrieves the SMS enrollment and verification templates.
	GetTemplates(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorSmsTemplatesResponseContent, error)

	// SetTemplates sets the SMS enrollment and verification templates.
	SetTemplates(ctx context.Context, request *managementv3.SetGuardianFactorSmsTemplatesRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorSmsTemplatesResponseContent, error)

	// GetTwilioProvider retrieves the Twilio configuration for the SMS factor.
	GetTwilioProvider(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetGuardianFactorsProviderSmsTwilioResponseContent, error)

	// SetTwilioProvider sets the Twilio configuration for the SMS factor.
	SetTwilioProvider(ctx context.Context, request *managementv3.SetGuardianFactorsProviderSmsTwilioRequestContent, opts ...option.RequestOption) (*managementv3.SetGuardianFactorsProviderSmsTwilioResponseContent, error)
}

GuardianFactorSmsAPIV3 is the V3 SDK interface for the SMS MFA factor configuration (/guardian/factors/sms).

Required scopes: `read:guardian_factors` for reads, `update:guardian_factors` for writes.

type GuardianPolicyAPIV3 added in v1.36.0

type GuardianPolicyAPIV3 interface {
	// List retrieves the MFA policies configured for the tenant.
	//
	// Required scope: `read:mfa_policies`.
	List(ctx context.Context, opts ...option.RequestOption) (managementv3.ListGuardianPoliciesResponseContent, error)

	// Set replaces the MFA policies configured for the tenant.
	//
	// Required scope: `update:mfa_policies`.
	Set(ctx context.Context, request managementv3.SetGuardianPoliciesRequestContent, opts ...option.RequestOption) (managementv3.SetGuardianPoliciesResponseContent, error)
}

GuardianPolicyAPIV3 is the V3 SDK interface for the tenant-wide multi-factor authentication (MFA) policies endpoint (/guardian/policies).

type HTTPClientAPI added in v1.0.0

type HTTPClientAPI interface {
	// NewRequest returns a new HTTP request.
	// If the payload is not nil it will be encoded as JSON.
	NewRequest(ctx context.Context, method, uri string, payload interface{}, options ...management.RequestOption) (*http.Request, error)

	// Do triggers an HTTP request and returns an HTTP response,
	// handling any context cancellations or timeouts.
	Do(req *http.Request) (*http.Response, error)

	// Request combines NewRequest and Do, encoding the payload as JSON and
	// returning an error for any non-2xx response.
	Request(ctx context.Context, method, uri string, payload interface{}, options ...management.RequestOption) error

	// URI builds a fully-qualified Management API URL from the given path segments.
	URI(path ...string) string
}

type JobsAPI added in v0.11.6

type JobsAPI interface {
	VerifyEmail(ctx context.Context, j *management.Job, opts ...management.RequestOption) (err error)
	Read(ctx context.Context, id string, opts ...management.RequestOption) (j *management.Job, err error)
	ExportUsers(ctx context.Context, j *management.Job, opts ...management.RequestOption) (err error)
	ImportUsers(ctx context.Context, j *management.Job, opts ...management.RequestOption) (err error)
}

type LogAPI

type LogAPI interface {
	// Read the data related to the log entry identified by id. This returns a
	// single log entry representation as specified in the schema.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (l *management.Log, err error)

	// List all log entries that match the specified search criteria (or lists all
	// log entries if no criteria are used). Set custom search criteria using the
	// `q` parameter, or search from a specific log id ("search from checkpoint").
	//
	// For more information on all possible event types, their respective acronyms
	// and descriptions, Log Data Event Listing.
	List(ctx context.Context, opts ...management.RequestOption) (l []*management.Log, err error)

	// Search is an alias for List.
	Search(ctx context.Context, opts ...management.RequestOption) ([]*management.Log, error)
}

type LogStreamAPI added in v0.8.0

type LogStreamAPI interface {
	// Create a log stream.
	Create(ctx context.Context, ls *management.LogStream, opts ...management.RequestOption) (err error)

	// Read a log stream.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (ls *management.LogStream, err error)

	// Update a log stream.
	Update(ctx context.Context, id string, ls *management.LogStream, opts ...management.RequestOption) (err error)

	// List all log streams.
	List(ctx context.Context, opts ...management.RequestOption) (ls []*management.LogStream, err error)

	// Delete a log stream.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)
}

type NetworkACLAPI added in v1.12.0

type NetworkACLAPI interface {
	// Create a new Network ACL.
	Create(ctx context.Context, n *management.NetworkACL, opts ...management.RequestOption) error

	// Read Network ACL details.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (n *management.NetworkACL, err error)

	// Update an existing Network ACL.
	Update(ctx context.Context, id string, n *management.NetworkACL, opts ...management.RequestOption) error

	// Patch an existing Network ACL.
	Patch(ctx context.Context, id string, n *management.NetworkACL, opts ...management.RequestOption) error

	// Delete a Network ACL.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List Network ACLs.
	List(ctx context.Context, opts ...management.RequestOption) (n []*management.NetworkACL, err error)
}

type NetworkACLKeyAPIV3 added in v1.35.0

type NetworkACLKeyAPIV3 interface {
	// List retrieves all Network ACL keys for the tenant.
	//
	// Required scope: `read:network_acl_keys`. The response is not paginated.
	List(ctx context.Context, opts ...option.RequestOption) (*managementv3.GetAllKeysNetworkACLsResponseContent, error)
}

NetworkACLKeyAPIV3 is the V3 SDK interface for the /keys/network-acls endpoint.

Only List is exposed today: the network-acl command uses it to let a user pick existing signing keys by name when adding the http_message_signature signal to a rule. Key create/delete is intentionally not wired yet (DXCDT-2269).

type OrganizationAPI added in v0.10.0

type OrganizationAPI interface {
	// Create an Organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/post_organizations
	Create(ctx context.Context, o *management.Organization, opts ...management.RequestOption) error

	// Read a specific organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/get_organizations_by_id
	Read(ctx context.Context, id string, opts ...management.RequestOption) (*management.Organization, error)

	// Update an organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/patch_organizations_by_id
	Update(ctx context.Context, id string, o *management.Organization, opts ...management.RequestOption) error

	// Delete a specific organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/delete_organizations_by_id
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List available organizations.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/get_organizations
	List(ctx context.Context, opts ...management.RequestOption) (c *management.OrganizationList, err error)

	// Members lists members of an organization.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Organizations/get_members
	Members(ctx context.Context, id string, opts ...management.RequestOption) (o *management.OrganizationMemberList, err error)

	// MemberRoles lists roles assigned to a member of an organization
	//
	// See: https://auth0.com/docs/api/management/v2#!/Organizations/get_organization_member_roles
	MemberRoles(ctx context.Context, id string, userID string, opts ...management.RequestOption) (r *management.OrganizationMemberRoleList, err error)

	// Connections retrieves connections enabled for an organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/get_enabled_connections
	Connections(ctx context.Context, id string, opts ...management.RequestOption) (c *management.OrganizationConnectionList, err error)

	// DiscoveryDomains retrieves the discovery domains for an organization.
	DiscoveryDomains(ctx context.Context, id string, opts ...management.RequestOption) (d *management.DiscoveryDomainList, err error)

	// CreateDiscoveryDomain creates a discovery domain for an organization.
	CreateDiscoveryDomain(ctx context.Context, id string, d *management.OrganizationDiscoveryDomain, opts ...management.RequestOption) (err error)

	// DiscoveryDomain retrieves a specific discovery domain for an organization.
	DiscoveryDomain(ctx context.Context, id string, domainID string, opts ...management.RequestOption) (d *management.OrganizationDiscoveryDomain, err error)

	// DeleteDiscoveryDomain deletes a specific discovery domain from an organization.
	DeleteDiscoveryDomain(ctx context.Context, id string, domainID string, opts ...management.RequestOption) (err error)

	// UpdateDiscoveryDomain updates a specific discovery domain for an organization.
	UpdateDiscoveryDomain(ctx context.Context, id string, domainID string, d *management.OrganizationDiscoveryDomain, opts ...management.RequestOption) (err error)

	// Invitations lists invitations for an organization.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Organizations/get_invitations
	Invitations(ctx context.Context, id string, opts ...management.RequestOption) (o *management.OrganizationInvitationList, err error)

	// Invitation retrieves an invitation to an organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/get_invitations_by_invitation_id
	Invitation(ctx context.Context, id string, invitationID string, opts ...management.RequestOption) (i *management.OrganizationInvitation, err error)

	// CreateInvitation creates invitations to an organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/post_invitations
	CreateInvitation(ctx context.Context, id string, i *management.OrganizationInvitation, opts ...management.RequestOption) (err error)

	// DeleteInvitation deletes an invitation to an organization.
	//
	// See: https://auth0.com/docs/api/management/v2/#!/Organizations/delete_invitations_by_invitation_id
	DeleteInvitation(ctx context.Context, id string, invitationID string, opts ...management.RequestOption) (err error)
}

type PhoneNotificationTemplateAPI added in v1.31.0

type PhoneNotificationTemplateAPI interface {
	List(ctx context.Context, request *managementv3.ListPhoneTemplatesRequestParameters, opts ...option.RequestOption) (*managementv3.ListPhoneTemplatesResponseContent, error)
}

type PromptAPI added in v0.11.3

type PromptAPI interface {
	// Read retrieves prompts settings.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Prompts/get_prompts
	Read(ctx context.Context, opts ...management.RequestOption) (p *management.Prompt, err error)

	// Update prompts settings.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Prompts/patch_prompts
	Update(ctx context.Context, p *management.Prompt, opts ...management.RequestOption) error

	// CustomText retrieves the custom text for a specific prompt and language.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Prompts/get_custom_text_by_language
	CustomText(ctx context.Context, p string, l string, opts ...management.RequestOption) (t map[string]interface{}, err error)

	// SetCustomText sets the custom text for a specific prompt. Existing texts will be overwritten.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Prompts/put_custom_text_by_language
	SetCustomText(ctx context.Context, p string, l string, b map[string]interface{}, opts ...management.RequestOption) (err error)

	// GetPartials retrieves the partials for a specific prompt.
	//
	// See: https://auth0.com/docs/api/management/v2/prompts/get-partials
	GetPartials(ctx context.Context, prompt management.PromptType, opts ...management.RequestOption) (c *management.PromptScreenPartials, err error)

	// SetPartials sets the partials for a specific prompt.
	//
	// See: https://auth0.com/docs/api/management/v2/prompts/put-partials
	SetPartials(ctx context.Context, prompt management.PromptType, c *management.PromptScreenPartials, opts ...management.RequestOption) error

	// ReadRendering retrieves the settings for the ACUL.
	//
	// See: https://auth0.com/docs/api/management/v2/prompts/get-rendering
	ReadRendering(ctx context.Context, prompt management.PromptType, screen management.ScreenName, opts ...management.RequestOption) (c *management.PromptRendering, err error)

	// UpdateRendering updates the settings for the ACUL.
	//
	// See: https://auth0.com/docs/api/management/v2/prompts/patch-rendering
	UpdateRendering(ctx context.Context, prompt management.PromptType, screen management.ScreenName, c *management.PromptRendering, opts ...management.RequestOption) error

	// BulkUpdateRendering updates multiple rendering settings in a single operation.
	//
	// See: https://auth0.com/docs/api/management/v2/prompts/patch-bulk-rendering
	BulkUpdateRendering(ctx context.Context, c *management.PromptRenderingBulkUpdate, opts ...management.RequestOption) error

	// ListRendering retrieves the settings for the ACUL.
	//
	ListRendering(ctx context.Context, opts ...management.RequestOption) (c *management.PromptRenderingList, err error)
}

type Quickstart added in v0.5.0

type Quickstart struct {
	Name                 string `json:"name"`
	AppType              string `json:"appType"`
	URL                  string `json:"url"`
	DownloadLink         string `json:"downloadLink"`
	DownloadInstructions string `json:"downloadInstructions"`
}

func (Quickstart) Download added in v1.0.0

func (q Quickstart) Download(ctx context.Context, downloadPath string, client *management.Client) error

func (Quickstart) SamplePath added in v1.0.0

func (q Quickstart) SamplePath(downloadPath string) (string, error)

type Quickstarts added in v1.0.0

type Quickstarts []Quickstart

func GetQuickstarts added in v1.0.0

func GetQuickstarts(ctx context.Context) (Quickstarts, error)

func (Quickstarts) FilterByType added in v1.0.0

func (q Quickstarts) FilterByType(qsType string) (Quickstarts, error)

func (Quickstarts) FindByStack added in v1.0.0

func (q Quickstarts) FindByStack(stack string) (Quickstart, error)

func (Quickstarts) Stacks added in v1.0.0

func (q Quickstarts) Stacks() []string

type RefreshTokenAPIV3 added in v1.33.0

type RefreshTokenAPIV3 interface {
	// Get retrieves refresh token information by token ID.
	//
	// Required scope: `read:refresh_tokens`.
	Get(ctx context.Context, id string, opts ...option.RequestOption) (*managementv3.GetRefreshTokenResponseContent, error)

	// Update refresh token metadata by token ID.
	//
	// Required scope: `update:refresh_tokens`.
	Update(ctx context.Context, id string, request *managementv3.UpdateRefreshTokenRequestContent, opts ...option.RequestOption) (*managementv3.UpdateRefreshTokenResponseContent, error)

	// Delete a refresh token by its ID.
	//
	// Required scope: `delete:refresh_tokens`.
	Delete(ctx context.Context, id string, opts ...option.RequestOption) error

	// Revoke refresh tokens in bulk by ID list, user, user+client, or
	// user+client+audience.
	//
	// Required scope: `delete:refresh_tokens`.
	Revoke(ctx context.Context, request *managementv3.RevokeRefreshTokensRequestContent, opts ...option.RequestOption) error
}

RefreshTokenAPIV3 is the V3 SDK interface for the top-level /refresh-tokens endpoint. Refresh tokens are keyed by token ID; user-scoped listing lives in UserRefreshTokenAPIV3.

type RequestParams added in v1.31.0

type RequestParams struct {
	AppType           string
	Callbacks         []string
	AllowedLogoutURLs []string
	WebOrigins        []string
	Name              string
	// CallbackPath is the path suffix appended to baseURL when resolving DetectionSub
	// in Callbacks. Leave empty to use the default "/callback". Examples:
	//   "/api/auth/callback"  (Next.js)
	//   "/auth/callback"      (Fastify)
	CallbackPath string
}

type ResourceServerAPI

type ResourceServerAPI interface {
	// Create a resource server.
	Create(ctx context.Context, rs *management.ResourceServer, opts ...management.RequestOption) (err error)

	// Read retrieves a resource server by its id or audience.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (rs *management.ResourceServer, err error)

	// Update a resource server.
	Update(ctx context.Context, id string, rs *management.ResourceServer, opts ...management.RequestOption) (err error)

	// Delete a resource server.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)

	// List all resource server.
	List(ctx context.Context, opts ...management.RequestOption) (rl *management.ResourceServerList, err error)
}

type ResourceServerAPIV3 added in v1.39.0

type ResourceServerAPIV3 interface {
	// Search resource servers using SCIM or Lucene filter syntax.
	Search(
		ctx context.Context,
		request *managementv3.SearchResourceServersRequestParameters,
		opts ...option.RequestOption,
	) (*core.Page[*string, *managementv3.ResourceServerSearchResponse, *managementv3.SearchResourceServersResponseContent], error)
}

ResourceServerAPIV3 is the V3 SDK interface for the eventually consistent resource-servers search endpoint (GET /resource-servers/search).

type ResourceServerSearchPage added in v1.39.0

ResourceServerSearchPage is one cursor-paginated page of resource-servers search results.

type RoleAPI added in v0.7.0

type RoleAPI interface {
	// Create a new role.
	Create(ctx context.Context, r *management.Role, opts ...management.RequestOption) (err error)

	// Retrieve a role.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (r *management.Role, err error)

	// List all roles that can be assigned to users or groups.
	List(ctx context.Context, opts ...management.RequestOption) (r *management.RoleList, err error)

	// Update a role.
	Update(ctx context.Context, id string, r *management.Role, opts ...management.RequestOption) (err error)

	// Delete a role.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)

	// AssociatePermissions associates permissions to a role.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Roles/post_role_permission_assignment
	AssociatePermissions(ctx context.Context, id string, permissions []*management.Permission, opts ...management.RequestOption) error

	// Permissions retrieves all permissions granted by a role.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Roles/get_role_permission
	Permissions(ctx context.Context, id string, opts ...management.RequestOption) (p *management.PermissionList, err error)

	// RemovePermissions removes permissions associated to a role.
	//
	// See: https://auth0.com/docs/api/management/v2#!/Roles/delete_role_permission_assignment
	RemovePermissions(ctx context.Context, id string, permissions []*management.Permission, opts ...management.RequestOption) error
}

type RuleAPI added in v0.3.0

type RuleAPI interface {
	// Create a new rule.
	//
	// Note: Changing a rule's stage of execution from the default `login_success`
	// can change the rule's function signature to have user omitted.
	Create(ctx context.Context, r *management.Rule, opts ...management.RequestOption) error

	// Retrieve rule details. Accepts a list of fields to include or exclude in the result.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (r *management.Rule, err error)

	// Update an existing rule.
	Update(ctx context.Context, id string, r *management.Rule, opts ...management.RequestOption) error

	// Delete a rule.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// List all rules.
	List(ctx context.Context, opts ...management.RequestOption) (r *management.RuleList, err error)
}

type SegmentListPage added in v1.39.0

SegmentListPage aliases the checkpoint-paginated segments list response. The alias keeps the interface return type a single identifier so mockgen's source parser can handle it (it cannot parse the multi-type-parameter generic inline).

type SegmentsAPI added in v1.39.0

SegmentsAPI describes the interface for segment operations.

type SelfServiceProfileAPI added in v1.21.0

type SelfServiceProfileAPI interface {
	// Create a new sSelf Service Profiles.
	Create(ctx context.Context, p *management.SelfServiceProfile, opts ...management.RequestOption) error

	// List all Self Service Profiles.
	List(ctx context.Context, opts ...management.RequestOption) (p *management.SelfServiceProfileList, err error)

	// Read Self Service Profile details for a given profile ID.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (p *management.SelfServiceProfile, err error)

	// Update an existing Self Service Profile.
	Update(ctx context.Context, id string, p *management.SelfServiceProfile, opts ...management.RequestOption) error

	// Delete a Self Service Profile.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error

	// GetCustomText retrieves text customizations for a given self-service profile, language and Self Service SSO Flow page.
	GetCustomText(ctx context.Context, id string, language string, page string, opts ...management.RequestOption) (payload map[string]interface{}, err error)
}

type SessionAPIV3 added in v1.33.0

type SessionAPIV3 interface {
	// Get retrieves session information by session ID.
	//
	// Required scope: `read:sessions`.
	Get(ctx context.Context, id string, opts ...option.RequestOption) (*managementv3.GetSessionResponseContent, error)

	// Update session metadata by session ID.
	//
	// Required scope: `update:sessions`.
	Update(ctx context.Context, id string, request *managementv3.UpdateSessionRequestContent, opts ...option.RequestOption) (*managementv3.UpdateSessionResponseContent, error)

	// Delete a session by ID.
	//
	// Required scope: `delete:sessions`.
	Delete(ctx context.Context, id string, opts ...option.RequestOption) error

	// Revoke a session by ID and all associated refresh tokens.
	//
	// Required scope: `delete:sessions`.
	Revoke(ctx context.Context, id string, opts ...option.RequestOption) error
}

SessionAPIV3 is the V3 SDK interface for the top-level /sessions endpoint. Sessions are keyed by session ID; user-scoped listing lives in UserSessionAPIV3.

type TenantAPI added in v0.6.0

type TenantAPI interface {
	Read(ctx context.Context, opts ...management.RequestOption) (t *management.Tenant, err error)
	Update(ctx context.Context, t *management.Tenant, opts ...management.RequestOption) (err error)
}

type TokenExchangeAPI added in v1.25.0

type TokenExchangeAPI interface {
	// List retrieves all token exchange profiles.
	List(ctx context.Context, opts ...management.RequestOption) (*management.TokenExchangeProfileList, error)

	// Read retrieves a token exchange profile by its ID.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (*management.TokenExchangeProfile, error)

	// Create creates a new token exchange profile.
	Create(ctx context.Context, profile *management.TokenExchangeProfile, opts ...management.RequestOption) error

	// Update updates an existing token exchange profile.
	Update(ctx context.Context, id string, profile *management.TokenExchangeProfile, opts ...management.RequestOption) error

	// Delete deletes a token exchange profile.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) error
}

TokenExchangeAPI is an interface that describes all the Token Exchange Profile related operations.

type UserAPI added in v0.5.1

type UserAPI interface {
	// Blocks retrieves a list of blocked IP addresses of a particular user.
	Blocks(ctx context.Context, id string, opts ...management.RequestOption) ([]*management.UserBlock, error)

	// BlocksByIdentifier retrieves a list of blocked IP addresses of a particular user using any of the user identifiers: username, phone number or email.
	BlocksByIdentifier(ctx context.Context, identifier string, opts ...management.RequestOption) ([]*management.UserBlock, error)

	// Unblock a user that was blocked due to an excessive amount of incorrectly
	// provided credentials.
	Unblock(ctx context.Context, id string, opts ...management.RequestOption) error

	// UnblockByIdentifier a user that was blocked due to an excessive amount of incorrectly provided credentials using any of the user identifiers: username, phone number or email.
	UnblockByIdentifier(ctx context.Context, identifier string, opts ...management.RequestOption) error

	// Create a new user.
	Create(ctx context.Context, u *management.User, opts ...management.RequestOption) (err error)

	// Read user details for a given user.
	Read(ctx context.Context, id string, opts ...management.RequestOption) (u *management.User, err error)

	// Update user.
	Update(ctx context.Context, id string, u *management.User, opts ...management.RequestOption) (err error)

	// Delete a user.
	Delete(ctx context.Context, id string, opts ...management.RequestOption) (err error)

	// List all users.
	List(ctx context.Context, opts ...management.RequestOption) (ul *management.UserList, err error)

	// Search for users.
	Search(ctx context.Context, opts ...management.RequestOption) (us *management.UserList, err error)

	// Roles lists all roles associated with a user.
	Roles(ctx context.Context, id string, opts ...management.RequestOption) (r *management.RoleList, err error)

	// AssignRoles assigns roles to a user.
	AssignRoles(ctx context.Context, id string, roles []*management.Role, opts ...management.RequestOption) error

	// RemoveRoles removes roles from a user.
	RemoveRoles(ctx context.Context, id string, roles []*management.Role, opts ...management.RequestOption) error

	// ListByEmail lists all users by email in all the connections.
	ListByEmail(ctx context.Context, email string, opts ...management.RequestOption) (us []*management.User, err error)
}

type UserRefreshTokenAPIV3 added in v1.33.0

type UserRefreshTokenAPIV3 interface {
	// List a user's refresh tokens (cursor-paginated).
	//
	// Required scope: `read:refresh_tokens`.
	List(ctx context.Context, userID string, request *managementv3.ListRefreshTokensRequestParameters, opts ...option.RequestOption) (*UserRefreshTokenPage, error)

	// Delete all refresh tokens for a user.
	//
	// Required scope: `delete:refresh_tokens`.
	Delete(ctx context.Context, userID string, opts ...option.RequestOption) error
}

UserRefreshTokenAPIV3 is the V3 SDK interface for user-scoped refresh tokens (/users/{id}/refresh-tokens).

type UserRefreshTokenPage added in v1.33.0

UserRefreshTokenPage is the paginated response returned by the user refresh tokens list endpoint. It is aliased here so the mock generator (which cannot parse instantiated generic types) sees a plain named type in the interface.

type UserSessionAPIV3 added in v1.33.0

type UserSessionAPIV3 interface {
	// List a user's sessions (cursor-paginated).
	//
	// Required scope: `read:sessions`.
	List(ctx context.Context, userID string, request *managementv3.ListUserSessionsRequestParameters, opts ...option.RequestOption) (*UserSessionPage, error)

	// Delete all sessions for a user.
	//
	// Required scope: `delete:sessions`.
	Delete(ctx context.Context, userID string, opts ...option.RequestOption) error
}

UserSessionAPIV3 is the V3 SDK interface for user-scoped sessions (/users/{id}/sessions).

type UserSessionPage added in v1.33.0

UserSessionPage is the paginated response returned by the user sessions list endpoint. It is aliased here so the mock generator (which cannot parse instantiated generic types) sees a plain named type in the interface.

type VariationsAPI added in v1.39.0

type VariationsAPI interface {
	List(ctx context.Context, featureFlagID string, opts ...option.RequestOption) (*management.ListVariationsResponseContent, error)
	Create(ctx context.Context, featureFlagID string, request *management.CreateVariationRequestContent, opts ...option.RequestOption) (*management.CreateVariationResponseContent, error)
	Get(ctx context.Context, featureFlagID string, variationID string, opts ...option.RequestOption) (*management.GetVariationResponseContent, error)
	Update(ctx context.Context, featureFlagID string, variationID string, request *management.UpdateVariationRequestContent, opts ...option.RequestOption) (*management.UpdateVariationResponseContent, error)
	Delete(ctx context.Context, featureFlagID string, variationID string, opts ...option.RequestOption) error
}

VariationsAPI describes the interface for variation operations (nested under feature flags).

Directories

Path Synopsis
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL