Documentation
¶
Overview ¶
Package openapi provides http request and response structs
Index ¶
- Constants
- Variables
- type AccountAccessReply
- type AccountAccessRequest
- type AccountFeaturesReply
- type AccountFeaturesRequest
- type AccountRolesOrganizationReply
- type AccountRolesOrganizationRequest
- type AccountRolesReply
- type AccountRolesRequest
- type AcmeSolverRequest
- type AuthData
- type AvailableAuthTypeLoginRequest
- type AvailableAuthTypeReply
- type CreateTrustCenterAnonymousJWTResponse
- type DeleteIntegrationRequest
- type DeleteIntegrationResponse
- type EndImpersonationReply
- type EndImpersonationRequest
- type ExampleCSVRequest
- type ExampleProvider
- type File
- type FileDownload
- type FileDownloadReply
- type ForgotPasswordReply
- type ForgotPasswordRequest
- type GetIntegrationStatusRequest
- type GetIntegrationTokenRequest
- type IntegrationStatusResponse
- type IntegrationToken
- type IntegrationTokenResponse
- type InviteReply
- type InviteRequest
- type JobRunnerRegistrationReply
- type JobRunnerRegistrationRequest
- type ListIntegrationsResponse
- type LoginReply
- type LoginRequest
- type OAuthCallbackRequest
- type OAuthCallbackResponse
- type OAuthFlowRequest
- type OAuthFlowResponse
- type OauthTokenRequest
- type ProductCatalogReply
- type ProductCatalogRequest
- type RefreshIntegrationTokenRequest
- type RefreshReply
- type RefreshRequest
- type RegisterReply
- type RegisterRequest
- type ResendReply
- type ResendRequest
- type ResetPasswordReply
- type ResetPasswordRequest
- type SSOCallbackRequest
- type SSOLoginReply
- type SSOLoginRequest
- type SSOStatusReply
- type SSOStatusRequest
- type SSOTokenAuthorizeReply
- type SSOTokenAuthorizeRequest
- type SSOTokenCallbackRequest
- type StartImpersonationReply
- type StartImpersonationRequest
- type StripeWebhookRequest
- type SwitchOrganizationReply
- type SwitchOrganizationRequest
- type TFAReply
- type TFARequest
- type UploadFilesReply
- type UploadFilesRequest
- type UserInfoReply
- type VerifyReply
- type VerifyRequest
- type VerifySubscribeReply
- type VerifySubscribeRequest
- type WebauthnBeginLoginResponse
- type WebauthnBeginRegistrationResponse
- type WebauthnLoginFinishRequest
- type WebauthnLoginRequest
- type WebauthnLoginResponse
- type WebauthnRegistrationFinishRequest
- type WebauthnRegistrationRequest
- type WebauthnRegistrationResponse
- type WebfingerRequest
Constants ¶
const ( // MinImpersonationReasonLength is the minimum length for impersonation reason MinImpersonationReasonLength = 10 // MaxImpersonationReasonLength is the maximum length for impersonation reason MaxImpersonationReasonLength = 500 )
Variables ¶
var ExampleAccountAccessReply = AccountAccessReply{ Reply: rout.Reply{Success: true}, Allowed: true, }
ExampleAccountAccessReply is an example of a successful `/account/access` response for OpenAPI documentation
var ExampleAccountAccessRequest = AccountAccessRequest{
Relation: "can_view",
ObjectType: "organization",
ObjectID: "01J4EXD5MM60CX4YNYN0DEE3Y1",
}
ExampleAccountAccessRequest is an example of a successful `/account/access` request for OpenAPI documentation
var ExampleAccountFeaturesReply = AccountFeaturesReply{ Reply: rout.Reply{Success: true}, Features: []string{ "policy-and-procedure-module", "centralized-audit-documentation", "risk-management", "compliance-module", }, OrganizationID: "01J4HMNDSZCCQBTY93BF9CBF5D", }
ExampleAccountFeaturesReply is an example of a successful `/account/features` response for OpenAPI documentation
var ExampleAccountFeaturesRequest = AccountFeaturesRequest{
ID: "01J4HMNDSZCCQBTY93BF9CBF5D",
}
ExampleAccountFeaturesRequest is an example of a successful `/account/features` request for OpenAPI documentation
var ExampleAccountRolesOrganizationReply = AccountRolesOrganizationReply{ Reply: rout.Reply{Success: true}, Roles: []string{"can_view", "can_edit", "audit_log_viewer"}, OrganizationID: "01J4HMNDSZCCQBTY93BF9CBF5D", }
ExampleAccountRolesOrganizationReply is an example of a successful `/account/roles/organization` response for OpenAPI documentation
var ExampleAccountRolesOrganizationRequest = AccountRolesOrganizationRequest{
ID: "01J4HMNDSZCCQBTY93BF9CBF5D",
}
ExampleAccountRolesOrganizationRequest is an example of a successful `/account/roles/organization` request for OpenAPI documentation
var ExampleAccountRolesReply = AccountRolesReply{ Reply: rout.Reply{Success: true}, Roles: []string{"can_view", "can_edit", "audit_log_viewer"}, }
ExampleAccountRolesReply is an example of a successful `/account/roles` response for OpenAPI documentation
var ExampleAccountRolesRequest = AccountRolesRequest{
ObjectType: "organization",
ObjectID: "01J4EXD5MM60CX4YNYN0DEE3Y1",
}
ExampleAccountRolesRequest is an example of a successful `/account/roles` request for OpenAPI documentation
var ExampleAcmeSolverRequest = AcmeSolverRequest{
Path: "01J4HMNDSZCCQBTY93BF9CBF5D",
}
ExampleAcmeSolverRequest is an example ACME solver request for OpenAPI documentation
var ExampleAvailableAuthTypeRequest = LoginRequest{
Username: "sfunky@theopenlane.io",
}
ExampleAvailableAuthTypeRequest is an example of a successful available auth type check for OpenAPI documentation
var ExampleAvailableAuthTypeSuccessResponse = AvailableAuthTypeReply{ Reply: rout.Reply{ Success: true, }, Methods: []enums.AuthProvider{ enums.AuthProviderCredentials, enums.AuthProviderWebauthn, }, }
ExampleAvailableAuthTypeSuccessResponse is an example of a successful available auth methods check response for OpenAPI documentation
var ExampleCreateTrustCenterAnonymousJWTResponse = CreateTrustCenterAnonymousJWTResponse{ AuthData: AuthData{ AccessToken: "access_token_here", RefreshToken: "refresh_token_here", }, }
ExampleCreateTrustCenterAnonymousJWTResponse is an example trust center anonymous JWT response for OpenAPI documentation
var ExampleEndImpersonationReply = EndImpersonationReply{ Reply: rout.Reply{Success: true}, Message: "Impersonation session ended successfully", }
ExampleEndImpersonationReply is an example response for OpenAPI documentation
var ExampleEndImpersonationRequest = EndImpersonationRequest{ SessionID: ulids.New().String(), Reason: "Support task completed", }
ExampleEndImpersonationRequest is an example request for OpenAPI documentation
var ExampleExampleCSVRequest = ExampleCSVRequest{
Filename: "actionplan",
}
ExampleLoginSuccessRequest is an example of a successful tfa validation request for OpenAPI documentation
var ExampleFileDownloadRequest = FileDownload{
Token: "token",
}
ExampleVerifySuccessRequest is an example of a successful verify request for OpenAPI documentation
var ExampleForgotPasswordSuccessRequest = ForgotPasswordRequest{
Email: "example@theopenlane.io",
}
ExampleForgotPasswordSuccessRequest is an example of a successful forgot password request for OpenAPI documentation
var ExampleForgotPasswordSuccessResponse = ForgotPasswordReply{ Reply: rout.Reply{ Success: true, }, Message: "We've received your request to have the password associated with this email reset. Please check your email.", }
ExampleForgotPasswordSuccessResponse is an example of a successful forgot password response for OpenAPI documentation
var ExampleInviteRequest = InviteRequest{
Token: "token",
}
ExampleInviteRequest is an example of a successful invite request for OpenAPI documentation
var ExampleInviteResponse = InviteReply{ Reply: rout.Reply{Success: true}, ID: "1234", Email: "", JoinedOrgID: "1234", Role: "admin", Message: "Welcome to your new organization!", AuthData: AuthData{ AccessToken: "access_token", RefreshToken: "refresh_token", Session: "session", TokenType: "bearer", }, }
ExampleInviteResponse is an example of a successful invite response for OpenAPI documentation
var ExampleJobRunnerRegistrationRequest = JobRunnerRegistrationRequest{ IPAddress: "192.168.0.1", Name: "ubuntu-eu-west-2", Token: "registration_tokenhere", Tags: []string{"self-hosted", "eu-west-2", "gcp", "kubernetes"}, }
ExampleJobRunnerRegistrationRequest is an example of a successful job runner registration request
var ExampleJobRunnerRegistrationResponse = JobRunnerRegistrationReply{ Reply: rout.Reply{Success: true}, Message: "Job runner node registered", }
ExampleJobRunnerRegistrationResponse is an example of a successful job runner registration response
var ExampleLoginSuccessRequest = LoginRequest{
Username: "sfunky@theopenlane.io",
Password: "mitb!",
}
ExampleLoginSuccessRequest is an example of a successful login request for OpenAPI documentation
var ExampleLoginSuccessResponse = LoginReply{ Reply: rout.Reply{ Success: true, }, TFAEnabled: true, AuthData: AuthData{ AccessToken: "access_token", RefreshToken: "refresh_token", Session: "session", TokenType: "bearer", }, }
ExampleLoginSuccessResponse is an example of a successful login response for OpenAPI documentation
var ExampleOAuthCallbackRequest = OAuthCallbackRequest{
Provider: "github",
Code: "4/0AQlEz8xY...",
State: "eyJvcmdJRCI6IjAxSE...",
}
ExampleOAuthCallbackRequest is an example OAuth callback request for OpenAPI documentation
var ExampleOAuthCallbackResponse = OAuthCallbackResponse{ Reply: rout.Reply{Success: true}, Success: true, Message: "Successfully connected GitHub integration", }
ExampleOAuthCallbackResponse is an example OAuth callback response for OpenAPI documentation
var ExampleOAuthFlowRequest = OAuthFlowRequest{ Provider: "github", RedirectURI: "https://app.example.com/integrations", Scopes: []string{"repo", "gist"}, }
ExampleOAuthFlowRequest is an example OAuth flow request for OpenAPI documentation
var ExampleOAuthFlowResponse = OAuthFlowResponse{ Reply: rout.Reply{Success: true}, AuthURL: "https://github.com/login/oauth/authorize?client_id=...&state=eyJvcmdJRCI6IjAxSE...", State: "eyJvcmdJRCI6IjAxSE...", Message: "", RequiresLogin: false, }
ExampleOAuthFlowResponse is an example OAuth flow response for OpenAPI documentation
var ExampleOauthTokenRequest = OauthTokenRequest{
Name: "Jon Snow",
Email: "jsnow@example.com",
AuthProvider: "google",
ExternalUserID: "1234567890",
ExternalUserName: "jsnow",
ClientToken: "example-client-token-12345",
Image: "https://example.com/avatar.jpg",
}
ExampleOauthTokenRequest is an example OAuth token request for OpenAPI documentation
var ExampleProductCatalogReply = ProductCatalogReply{ Reply: rout.Reply{Success: true}, Catalog: gencatalog.DefaultSandboxCatalog, }
ExampleProductCatalogReply is an example of a successful `/products` response for OpenAPI documentation
var ExampleProductCatalogRequest = ProductCatalogRequest{ IncludeBeta: false, IncludePrivate: false, }
ExampleProductCatalogRequest is an example of a successful `/products` request for OpenAPI documentation
var ExampleRefreshIntegrationTokenRequest = RefreshIntegrationTokenRequest{
Provider: "github",
}
ExampleRefreshIntegrationTokenRequest is an example refresh integration token request for OpenAPI documentation
var ExampleRefreshRequest = RefreshRequest{
RefreshToken: "token",
}
ExampleRefreshRequest is an example of a successful refresh request for OpenAPI documentation
var ExampleRefreshSuccessResponse = RefreshReply{ Reply: rout.Reply{Success: true}, Message: "success", AuthData: AuthData{ AccessToken: "access_token", RefreshToken: "refresh_token", Session: "session", TokenType: "bearer", }, }
ExampleRefreshSuccessResponse is an example of a successful refresh response for OpenAPI documentation
var ExampleRegisterSuccessRequest = RegisterRequest{
FirstName: "Sarah",
LastName: "Funk",
Email: "sfunky@theopenlane.io",
Password: "mitb!",
Token: stringPtr("invite_token_example"),
}
ExampleRegisterSuccessRequest is an example of a successful register request for OpenAPI documentation
var ExampleRegisterSuccessResponse = RegisterReply{ Reply: rout.Reply{Success: true}, ID: "1234", Email: "", Message: "Welcome to Openlane!", }
ExampleRegisterSuccessResponse is an example of a successful register response for OpenAPI documentation
var ExampleResendEmailSuccessRequest = ResendRequest{
Email: "cercei.lannister@theopenlane.io",
}
ExampleResendEmailSuccessRequest is an example of a successful resend email request for OpenAPI documentation
var ExampleResendEmailSuccessResponse = ResendReply{ Reply: rout.Reply{ Success: true, }, Message: "Email has been resent", }
ExampleResendEmailSuccessResponse is an example of a successful resend email response for OpenAPI documentation
var ExampleResetPasswordSuccessRequest = ResetPasswordRequest{
Password: "mitb!",
Token: "token",
}
ExampleResetPasswordSuccessRequest is an example of a successful reset password request for OpenAPI documentation
var ExampleResetPasswordSuccessResponse = ResetPasswordReply{ Reply: rout.Reply{ Success: true, }, Message: "Password has been reset", }
ExampleResetPasswordSuccessResponse is an example of a successful reset password response for OpenAPI documentation
var ExampleSSOCallbackRequest = SSOCallbackRequest{ Code: "code", State: "state", OrganizationID: ulids.New().String(), }
ExampleSSOCallbackRequest is an example request for OpenAPI documentation
var ExampleSSOLoginRequest = SSOLoginRequest{ OrganizationID: ulids.New().String(), ReturnURL: "https://app.sitb.com", }
ExampleSSOLoginRequest is an example request for OpenAPI documentation
var ExampleSSOStatusReply = SSOStatusReply{ Reply: rout.Reply{Success: true}, Enforced: true, Provider: enums.SSOProviderOkta, DiscoveryURL: "https://id.example.com/.well-known/openid-configuration", SAMLSignInURL: "https://id.example.com/saml/signin", OrganizationID: ulids.New().String(), OrgTFAEnforced: true, UserTFAEnabled: false, }
ExampleSSOStatusReply is an example response for OpenAPI documentation
var ExampleSSOStatusRequest = SSOStatusRequest{
Resource: "acct:mitb@theopenlane.io",
}
ExampleSSOStatusRequest is an example request for OpenAPI documentation
var ExampleSSOTokenAuthorizeReply = SSOTokenAuthorizeReply{ Reply: rout.Reply{Success: true}, OrganizationID: ulids.New().String(), TokenID: ulids.New().String(), Message: "success", }
ExampleSSOTokenAuthorizeReply is an example response for OpenAPI documentation
var ExampleSSOTokenAuthorizeRequest = SSOTokenAuthorizeRequest{ OrganizationID: ulids.New().String(), TokenID: ulids.New().String(), TokenType: "api", }
ExampleSSOTokenAuthorizeRequest is an example request for OpenAPI documentation
var ExampleSSOTokenCallbackRequest = SSOTokenCallbackRequest{
Code: "code",
State: "state",
}
ExampleSSOTokenCallbackRequest is an example request for OpenAPI documentation
var ExampleStartImpersonationReply = StartImpersonationReply{ Reply: rout.Reply{Success: true}, Token: "imp_" + ulids.New().String(), ExpiresAt: time.Now().Add(time.Hour), SessionID: ulids.New().String(), Message: "Impersonation session started successfully", }
ExampleStartImpersonationReply is an example response for OpenAPI documentation
var ExampleStartImpersonationRequest = StartImpersonationRequest{ TargetUserID: ulids.New().String(), Type: "support", Reason: "Customer support assistance for account recovery", Duration: nil, }
ExampleStartImpersonationRequest is an example request for OpenAPI documentation
var ExampleSwitchSuccessReply = SwitchOrganizationReply{ Reply: rout.Reply{ Success: true, }, AuthData: AuthData{ AccessToken: "access_token", RefreshToken: "refresh_token", Session: "session", TokenType: "bearer", }, }
ExampleSwitchSuccessReply is an example of a successful switch organization response for OpenAPI documentation
var ExampleSwitchSuccessRequest = SwitchOrganizationRequest{ TargetOrganizationID: ulids.New().String(), }
ExampleSwitchSuccessRequest is an example of a successful switch organization request for OpenAPI documentation
var ExampleTFASSuccessResponse = TFAReply{ Reply: rout.Reply{ Success: true, }, }
ExampleLoginSuccessResponse is an example of a successful tfa validation response for OpenAPI documentation
var ExampleTFASuccessRequest = TFARequest{
TOTPCode: "113371",
}
ExampleLoginSuccessRequest is an example of a successful tfa validation request for OpenAPI documentation
var ExampleUploadFileRequest = UploadFilesRequest{ UploadFile: multipart.FileHeader{ Filename: "file.txt", Size: 1024, Header: textproto.MIMEHeader{ "Content-Type": []string{"text/plain"}, }, }, }
ExampleUploadFileRequest is an example of a successful upload request for OpenAPI documentation
var ExampleUploadFilesSuccessResponse = UploadFilesReply{ Reply: rout.Reply{ Success: true, }, Message: "file(s) uploaded successfully", FileCount: 1, Files: []File{ { ID: "1234", OriginalName: "file.txt", MD5: []byte("1234"), CreatedAt: time.Now(), UpdatedAt: time.Now(), }, }, }
ExampleUploadFilesSuccessResponse is an example of a successful upload response for OpenAPI documentation
var ExampleUserInfoSuccessResponse = UserInfoReply{ Reply: rout.Reply{Success: true}, ID: "01J4EXD5MM60CX4YNYN0DEE3Y1", Email: "jsnow@example.com", FirstName: "Jon", LastName: "Snow", DisplayName: "Jon Snow", AvatarRemoteURL: stringPtr("https://example.com/avatar.jpg"), LastSeen: stringPtr("2023-01-01T00:00:00Z"), Role: "ADMIN", Sub: "user123", }
ExampleUserInfoSuccessResponse is an example of a successful userinfo response for OpenAPI documentation
var ExampleVerifySubscriptionResponse = VerifySubscribeReply{ Reply: rout.Reply{Success: true}, Message: "Subscription confirmed, looking forward to sending you updates!", }
ExampleVerifySubscriptionResponse is an example of a successful verify subscription response for OpenAPI documentation
var ExampleVerifySubscriptionSuccessRequest = VerifySubscribeRequest{
Token: "token",
}
ExampleVerifySubscriptionSuccessRequest is an example of a successful verify subscription request for OpenAPI documentation
var ExampleVerifySuccessRequest = VerifyRequest{
Token: "token",
}
ExampleVerifySuccessRequest is an example of a successful verify request for OpenAPI documentation
var ExampleVerifySuccessResponse = VerifyReply{ Reply: rout.Reply{ Success: true, }, ID: ulids.New().String(), Email: "gregor.clegane@theopenlane.io", Message: "Email has been verified", AuthData: AuthData{ AccessToken: "access_token", RefreshToken: "refresh_token", Session: "session", TokenType: "bearer", }, }
ExampleVerifySuccessResponse is an example of a successful verify response for OpenAPI documentation
var ExampleWebauthnBeginLoginResponse = WebauthnBeginLoginResponse{ Reply: rout.Reply{Success: true}, Session: "session123", }
ExampleWebauthnBeginLoginResponse is an example WebAuthn begin login response for OpenAPI documentation
var ExampleWebauthnBeginRegistrationRequest = WebauthnRegistrationRequest{
Email: "sarahisthebest@sarahsthebest.com",
Name: "Sarah Funk",
}
var ExampleWebauthnBeginRegistrationResponse = WebauthnBeginRegistrationResponse{ Reply: rout.Reply{Success: true}, CredentialCreation: &protocol.CredentialCreation{ Response: protocol.PublicKeyCredentialCreationOptions{ RelyingParty: protocol.RelyingPartyEntity{ CredentialEntity: protocol.CredentialEntity{ Name: "Openlane", }, ID: "theopenlane.io", }, User: protocol.UserEntity{ CredentialEntity: protocol.CredentialEntity{ Name: "Sarah Funk", }, DisplayName: "sarahfunk", ID: []byte("user-id-12345"), }, Challenge: protocol.URLEncodedBase64("cmFuZG9tLWNoYWxsZW5nZS1zdHJpbmc="), Timeout: 60000, }}, Session: "example-session-id", }
var ExampleWebauthnLoginFinishRequest = WebauthnLoginFinishRequest{ ID: "JBqvfKoo_U-McTi9NxkpDTncmL2Lg6fczz6PD7WesCHQPg", RawID: "JBqvfKoo_U-McTi9NxkpDTncmL2Lg6fczz6PD7WesCHQPg", Type: "public-key", AuthenticatorAttachment: "platform", ClientExtensionResults: map[string]interface{}{}, Response: struct { AuthenticatorData string `json:"authenticatorData" description:"The authenticator data"` ClientDataJSON string `json:"clientDataJSON" description:"The client data JSON"` Signature string `json:"signature" description:"The assertion signature"` UserHandle string `json:"userHandle,omitempty" description:"The user handle"` }{ AuthenticatorData: "SZYN5YgOjGh0NBcPZHZgW4_krrmihjLHmVzzuoMdl2NdAAAAALraVWanqkAfvZZFYZpVEg0AIiQar3yqKP1PjHE4vTcZKQ053Ji9i4On3M8-jw-1nrAh0D6lAQIDJiABIVggldWfMY_HYjHCZuSgBcDj-Zqcnipy1SJVNlhvmZBxvpciWCDh1UJNz9Uyr6jqeQhApJ3krQCvDNoeXaH0ffa9KapYdw", ClientDataJSON: "eyJ0eXBlIjoid2ViYXV0aG4uZ2V0IiwiY2hhbGxlbmdlIjoiTWZlN1l6aS0zUU9rMDM4VHh3dVVvaTBaaURIZEdaOGlGNVhXc09UTTVnbyIsIm9yaWdpbiI6Imh0dHA6Ly9sb2NhbGhvc3Q6MzAwMSIsImNyb3NzT3JpZ2luIjpmYWxzZX0", Signature: "MEUCIQDKIueQAhZmGtPTmzp7QQRjZU_XLUqHdGj3QKRMOxRNbwIgF1hkJJ5y7cA3RGZe9x4n9vXq_L9x8eR1r9cE4w1uJ_A", UserHandle: "dXNlci1pZC0xMjM0NQ", }, }
ExampleWebauthnLoginFinishRequest is an example WebAuthn login finish request for OpenAPI documentation
var ExampleWebauthnLoginRequest = WebauthnLoginRequest{
Email: "",
}
ExampleWebauthnLoginRequest is an example WebAuthn login request for OpenAPI documentation
var ExampleWebauthnLoginResponse = WebauthnLoginResponse{ Reply: rout.Reply{Success: true}, Message: "Authentication successful", AuthData: AuthData{ AccessToken: "access_token_here", RefreshToken: "refresh_token_here", }, }
ExampleWebauthnLoginResponse is an example WebAuthn login response for OpenAPI documentation
var ExampleWebauthnRegistrationFinishRequest = WebauthnRegistrationFinishRequest{ ID: "JBqvfKoo_U-McTi9NxkpDTncmL2Lg6fczz6PD7WesCHQPg", RawID: "JBqvfKoo_U-McTi9NxkpDTncmL2Lg6fczz6PD7WesCHQPg", Type: "public-key", AuthenticatorAttachment: "platform", ClientExtensionResults: map[string]interface{}{}, Response: struct { AttestationObject string `json:"attestationObject" description:"The attestation object"` ClientDataJSON string `json:"clientDataJSON" description:"The client data JSON"` PublicKey string `json:"publicKey,omitempty" description:"The public key"` PublicKeyAlgorithm int `json:"publicKeyAlgorithm,omitempty" description:"The public key algorithm"` Transports []string `json:"transports,omitempty" description:"Available transports"` AuthenticatorData string `json:"authenticatorData,omitempty" description:"The authenticator data"` }{ AttestationObject: "o2NmbXRkbm9uZWdhdHRTdG10oGhhdXRoRGF0YVimSZYN5YgOjGh0NBcPZHZgW4_krrmihjLHmVzzuoMdl2NdAAAAALraVWanqkAfvZZFYZpVEg0AIiQar3yqKP1PjHE4vTcZKQ053Ji9i4On3M8-jw-1nrAh0D6lAQIDJiABIVggldWfMY_HYjHCZuSgBcDj-Zqcnipy1SJVNlhvmZBxvpciWCDh1UJNz9Uyr6jqeQhApJ3krQCvDNoeXaH0ffa9KapYdw", ClientDataJSON: "eyJ0eXBlIjoid2ViYXV0aG4uY3JlYXRlIiwiY2hhbGxlbmdlIjoiTWZlN1l6aS0zUU9rMDM4VHh3dVVvaTBaaURIZEdaOGlGNVhXc09UTTVnbyIsIm9yaWdpbiI6Imh0dHA6Ly9sb2NhbGhvc3Q6MzAwMSIsImNyb3NzT3JpZ2luIjpmYWxzZX0", PublicKey: "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEldWfMY_HYjHCZuSgBcDj-Zqcnipy1SJVNlhvmZBxvpfh1UJNz9Uyr6jqeQhApJ3krQCvDNoeXaH0ffa9KapYdw", PublicKeyAlgorithm: -7, Transports: []string{"internal", "hybrid"}, AuthenticatorData: "SZYN5YgOjGh0NBcPZHZgW4_krrmihjLHmVzzuoMdl2NdAAAAALraVWanqkAfvZZFYZpVEg0AIiQar3yqKP1PjHE4vTcZKQ053Ji9i4On3M8-jw-1nrAh0D6lAQIDJiABIVggldWfMY_HYjHCZuSgBcDj-Zqcnipy1SJVNlhvmZBxvpciWCDh1UJNz9Uyr6jqeQhApJ3krQCvDNoeXaH0ffa9KapYdw", }, }
ExampleWebauthnRegistrationFinishRequest is an example WebAuthn registration finish request for OpenAPI documentation
var ExampleWebauthnRegistrationResponse = WebauthnRegistrationResponse{ Reply: rout.Reply{Success: true}, Message: "Registration successful", AuthData: AuthData{ AccessToken: "access_token_here", RefreshToken: "refresh_token_here", }, }
ExampleWebauthnRegistrationResponse is an example WebAuthn registration response for OpenAPI documentation
var ExampleWebfingerRequest = WebfingerRequest{
Resource: "acct:sarah@funkyhous.info",
}
ExampleWebfingerRequest is an example request for OpenAPI documentation
Functions ¶
This section is empty.
Types ¶
type AccountAccessReply ¶
AccountAccessReply holds the fields that are sent on a response to the `/account/access` endpoint
func (*AccountAccessReply) ExampleResponse ¶
func (r *AccountAccessReply) ExampleResponse() any
ExampleResponse returns an example AccountAccessReply for OpenAPI documentation
type AccountAccessRequest ¶
type AccountAccessRequest struct {
ObjectID string `json:"object_id" description:"The ID of the object to check access for" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
ObjectType string `` /* 138-byte string literal not displayed */
Relation string `json:"relation" description:"The relation to check access for, e.g. can_view, can_edit" example:"can_view"`
SubjectType string `json:"subject_type,omitempty" description:"The type of subject to check access for, e.g. service, user" example:"user"`
}
AccountAccessRequest contains organization ID for checking access permissions
func (*AccountAccessRequest) Validate ¶
func (r *AccountAccessRequest) Validate() error
Validate ensures the required fields are set on the AccountAccessRequest
type AccountFeaturesReply ¶
type AccountFeaturesReply struct {
rout.Reply
Features []string `` /* 138-byte string literal not displayed */
OrganizationID string `json:"organization_id" description:"The ID of the organization the user has features in" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
AccountFeaturesReply holds the fields that are sent on a response to the `/account/features` endpoint
func (*AccountFeaturesReply) ExampleResponse ¶
func (r *AccountFeaturesReply) ExampleResponse() any
ExampleResponse returns an example AccountFeaturesReply for OpenAPI documentation
type AccountFeaturesRequest ¶
type AccountFeaturesRequest struct {
ID string `param:"id" description:"The ID of the organization to check roles for" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
AccountFeaturesRequest contains organization ID for retrieving available features
func (*AccountFeaturesRequest) Validate ¶
func (r *AccountFeaturesRequest) Validate() error
Validate ensures the required fields are set on the AccountFeaturesRequest
type AccountRolesOrganizationReply ¶
type AccountRolesOrganizationReply struct {
rout.Reply
Roles []string `json:"roles" description:"The roles the user has in the organization, e.g. can_view, can_edit"`
OrganizationID string `json:"organization_id" description:"The ID of the organization the user has roles in" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
AccountRolesOrganizationReply holds the fields that are sent on a response to the `/account/roles/organization` endpoint
func (*AccountRolesOrganizationReply) ExampleResponse ¶
func (r *AccountRolesOrganizationReply) ExampleResponse() any
ExampleResponse returns an example AccountRolesOrganizationReply for OpenAPI documentation
type AccountRolesOrganizationRequest ¶
type AccountRolesOrganizationRequest struct {
ID string `param:"id" description:"The ID of the organization to check roles for" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
AccountRolesOrganizationRequest contains organization ID for retrieving organization-specific roles
func (*AccountRolesOrganizationRequest) Validate ¶
func (r *AccountRolesOrganizationRequest) Validate() error
Validate ensures the required fields are set on the AccountRolesOrganizationRequest
type AccountRolesReply ¶
type AccountRolesReply struct {
rout.Reply
// Roles is a list of roles the user has for the specified object(s)
// @deprecated use ObjectRoles instead, may be removed in a future release
Roles []string `json:"roles" description:" @deprecated use ObjectRoles instead. A list of roles the subject has for the specified object"`
// ObjectRoles is a map of object IDs to the roles the user has for each object ID
ObjectRoles map[string][]string `json:"object_roles,omitempty" description:"A map of object IDs to the roles the subject has for each object ID"`
}
AccountRolesReply holds the fields that are sent on a response to the `/account/roles` endpoint
func (*AccountRolesReply) ExampleResponse ¶
func (r *AccountRolesReply) ExampleResponse() any
ExampleResponse returns an example AccountRolesReply for OpenAPI documentation
type AccountRolesRequest ¶
type AccountRolesRequest struct {
// @deprecated use ObjectIDs instead, may be removed in a future release
ObjectID string `` /* 153-byte string literal not displayed */
ObjectIDs []string `` // example:"["01J4EXD5MM60CX4YNYN0DEE3Y1", "01J4EXD5MM60CX4YNYN0DEE3Y2"]"
/* 132-byte string literal not displayed */
ObjectType string `` /* 137-byte string literal not displayed */
SubjectType string `json:"subject_type,omitempty" description:"The type of subject to check roles for, e.g. service, user" example:"user"`
Relations []string `json:"relations,omitempty" description:"The relations to check roles for, e.g. can_view, can_edit"`
}
AccountRolesRequest contains object IDs for retrieving roles associated with them
func (*AccountRolesRequest) Validate ¶
func (r *AccountRolesRequest) Validate() error
Validate ensures the required fields are set on the AccountAccessRequest
type AcmeSolverRequest ¶
type AcmeSolverRequest struct {
Path string `param:"path" description:"The path to the acme challenge" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
AcmeSolverRequest is the request to solve an acme challenge
type AuthData ¶
type AuthData struct {
AccessToken string `json:"access_token" description:"The access token to be used for authentication"`
RefreshToken string `json:"refresh_token,omitempty" description:"The refresh token to be used to refresh the access token after it expires"`
Session string `json:"session,omitempty" description:"The short-lived session token required for authentication"`
TokenType string `json:"token_type,omitempty" description:"The type of token being returned" example:"bearer"`
}
type AvailableAuthTypeLoginRequest ¶
type AvailableAuthTypeLoginRequest struct {
Username string `json:"username" description:"The email address associated with the existing account" example:"jsnow@example.com"`
}
AvailableAuthTypeLoginRequest holds the payload for checking the auth types available to a user passkeys? or both passkeys and credentials or just credentials
func (*AvailableAuthTypeLoginRequest) Validate ¶
func (r *AvailableAuthTypeLoginRequest) Validate() error
Validate ensures the required fields are set on the AvailableAuthTypeLoginRequest request
type AvailableAuthTypeReply ¶
type AvailableAuthTypeReply struct {
rout.Reply
Methods []enums.AuthProvider `json:"methods,omitempty"`
}
AvailableAuthTypeReply holds the response to AvailableAuthTypeLoginRequest
func (*AvailableAuthTypeReply) ExampleResponse ¶
func (r *AvailableAuthTypeReply) ExampleResponse() any
ExampleResponse returns an example AvailableAuthTypeReply for OpenAPI documentation
type CreateTrustCenterAnonymousJWTResponse ¶
type CreateTrustCenterAnonymousJWTResponse struct {
AuthData
}
CreateTrustCenterAnonymousJWTResponse is the response to a request to create a trust center anonymous JWT
func (*CreateTrustCenterAnonymousJWTResponse) ExampleResponse ¶
func (r *CreateTrustCenterAnonymousJWTResponse) ExampleResponse() any
ExampleResponse returns an example CreateTrustCenterAnonymousJWTResponse for OpenAPI documentation
type DeleteIntegrationRequest ¶
type DeleteIntegrationRequest struct {
ID string `param:"id" description:"Integration ID" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
}
DeleteIntegrationRequest is the request for deleting an integration
func (*DeleteIntegrationRequest) Validate ¶
func (r *DeleteIntegrationRequest) Validate() error
Validate validates the DeleteIntegrationRequest
type DeleteIntegrationResponse ¶
DeleteIntegrationResponse is the response for deleting an integration
type EndImpersonationReply ¶
type EndImpersonationReply struct {
rout.Reply
Message string `json:"message" description:"Success message"`
}
EndImpersonationReply represents the response when ending impersonation
func (*EndImpersonationReply) ExampleResponse ¶
func (r *EndImpersonationReply) ExampleResponse() any
ExampleResponse returns an example EndImpersonationReply for OpenAPI documentation
type EndImpersonationRequest ¶
type EndImpersonationRequest struct {
SessionID string `json:"session_id" validate:"required" description:"The session ID to end"`
Reason string `json:"reason,omitempty" description:"Optional reason for ending the session"`
}
EndImpersonationRequest represents a request to end an impersonation session
func (*EndImpersonationRequest) Validate ¶
func (r *EndImpersonationRequest) Validate() error
Validate ensures the required fields are set on the EndImpersonationRequest
type ExampleCSVRequest ¶
type ExampleCSVRequest struct {
Filename string `json:"filename" description:"the file name to check for" example:"actionplan"`
}
ExampleCSVRequest holds the payload for serving example CSV files
func (*ExampleCSVRequest) Validate ¶
func (r *ExampleCSVRequest) Validate() error
Validate ensures the required fields are set on the ExampleCSVRequest request
type ExampleProvider ¶
type ExampleProvider interface {
ExampleResponse() any
}
ExampleProvider interface allows response models to provide their own examples This eliminates the need for separate Example* variables and static switch statements
type File ¶
type File = storagetypes.File
type FileDownload ¶ added in v0.39.2
type FileDownload struct {
ID string `param:"id" description:"the file ID" example:"01J4HMNDSZCCQBTY93BF9CBF5D"`
Token string `query:"token" description:"The token to be used to verify the email address, token is sent via email"`
}
func (*FileDownload) Validate ¶ added in v0.39.2
func (r *FileDownload) Validate() error
Validate ensures the required fields are set on the VerifyRequest request
type FileDownloadReply ¶ added in v0.39.2
type FileDownloadReply struct {
rout.Reply
Message string `json:"message,omitempty"`
File File `json:"file" description:"The files that were uploaded"`
}
UploadFilesReply holds the fields that are sent on a response to the `/upload` endpoint
func (*FileDownloadReply) ExampleResponse ¶ added in v0.39.2
func (r *FileDownloadReply) ExampleResponse() any
ExampleResponse returns an example UploadFilesReply for OpenAPI documentation
type ForgotPasswordReply ¶
ForgotPasswordReply contains fields for a forgot password response
func (*ForgotPasswordReply) ExampleResponse ¶
func (r *ForgotPasswordReply) ExampleResponse() any
ExampleResponse returns an example ForgotPasswordReply for OpenAPI documentation
type ForgotPasswordRequest ¶
type ForgotPasswordRequest struct {
Email string `` /* 136-byte string literal not displayed */
}
ForgotPasswordRequest contains fields for a forgot password request
func (*ForgotPasswordRequest) Validate ¶
func (r *ForgotPasswordRequest) Validate() error
Validate ensures the required fields are set on the ForgotPasswordRequest request
type GetIntegrationStatusRequest ¶
type GetIntegrationStatusRequest struct {
Provider string `param:"provider" description:"OAuth provider (github, slack, etc.)" example:"github"`
}
GetIntegrationStatusRequest is the request for checking integration status
func (*GetIntegrationStatusRequest) Validate ¶
func (r *GetIntegrationStatusRequest) Validate() error
Validate validates the GetIntegrationStatusRequest
type GetIntegrationTokenRequest ¶
type GetIntegrationTokenRequest struct {
Provider string `param:"provider" description:"OAuth provider (github, slack, etc.)" example:"github"`
}
GetIntegrationTokenRequest is the request for getting integration tokens
func (*GetIntegrationTokenRequest) Validate ¶
func (r *GetIntegrationTokenRequest) Validate() error
Validate validates the GetIntegrationTokenRequest
type IntegrationStatusResponse ¶
type IntegrationStatusResponse struct {
rout.Reply
Provider string `json:"provider"`
Connected bool `json:"connected"`
Status string `json:"status,omitempty"` // "connected", "expired", "invalid"
TokenValid bool `json:"tokenValid,omitempty"`
TokenExpired bool `json:"tokenExpired,omitempty"`
Message string `json:"message"`
Integration any `json:"integration,omitempty"` // Will be *ent.Integration
}
IntegrationStatusResponse is the response for checking integration status
func (*IntegrationStatusResponse) ExampleResponse ¶
func (r *IntegrationStatusResponse) ExampleResponse() any
ExampleResponse returns an example IntegrationStatusResponse for OpenAPI documentation
type IntegrationToken ¶
type IntegrationToken struct {
Provider string `json:"provider" description:"OAuth provider (github, slack, etc.)"`
AccessToken string `json:"accessToken" description:"OAuth access token"`
RefreshToken string `json:"refreshToken,omitempty" description:"OAuth refresh token"`
ExpiresAt *time.Time `json:"expiresAt,omitempty" description:"Token expiration time"`
ProviderUserID string `json:"providerUserId,omitempty" description:"User ID from the OAuth provider"`
ProviderUsername string `json:"providerUsername,omitempty" description:"Username from the OAuth provider"`
ProviderEmail string `json:"providerEmail,omitempty" description:"Email from the OAuth provider"`
}
IntegrationToken represents stored OAuth tokens for an integration
func (*IntegrationToken) HasValidToken ¶
func (t *IntegrationToken) HasValidToken() bool
HasValidToken returns true if the token is valid and not expired
func (*IntegrationToken) IsExpired ¶
func (t *IntegrationToken) IsExpired() bool
IsExpired returns true if the token has expired
type IntegrationTokenResponse ¶
type IntegrationTokenResponse struct {
rout.Reply
Provider string `json:"provider"`
Token *IntegrationToken `json:"token"`
ExpiresAt *time.Time `json:"expiresAt,omitempty"`
}
IntegrationTokenResponse is the response for getting integration tokens
func (*IntegrationTokenResponse) ExampleResponse ¶
func (r *IntegrationTokenResponse) ExampleResponse() any
ExampleResponse returns an example IntegrationTokenResponse for OpenAPI documentation
type InviteReply ¶
type InviteReply struct {
rout.Reply
ID string `json:"user_id" description:"The ID of the user that was created" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
Email string `json:"email" description:"The email address of the user" example:"jsnow@example.com"`
Message string `json:"message"`
JoinedOrgID string `json:"joined_org_id" description:"The ID of the organization the user joined" example:"01JJFVMGENQS9ZG3GVA50QVX5E"`
Role string `json:"role" description:"The role the user has in the organization" example:"admin"`
NeedsSSO bool `json:"needs_sso,omitempty"`
AuthData
}
InviteReply holds the fields that are sent on a response to an accepted invitation
func (*InviteReply) ExampleResponse ¶
func (r *InviteReply) ExampleResponse() any
ExampleResponse returns an example InviteReply for OpenAPI documentation
type InviteRequest ¶
type InviteRequest struct {
Token string `query:"token" description:"The token to be used to accept the invitation, token is sent via email"`
}
InviteRequest contains invitation token for organization membership
func (*InviteRequest) Validate ¶
func (r *InviteRequest) Validate() error
Validate ensures the required fields are set on the InviteRequest request
type JobRunnerRegistrationReply ¶
JobRunnerRegistrationReply is the response to begin a job runner registration this includes the credential creation options and the session token
func (*JobRunnerRegistrationReply) ExampleResponse ¶
func (r *JobRunnerRegistrationReply) ExampleResponse() any
ExampleResponse returns an example JobRunnerRegistrationReply for OpenAPI documentation
type JobRunnerRegistrationRequest ¶
type JobRunnerRegistrationRequest struct {
IPAddress string `json:"ip_address" description:"The IP address of the node being registered"`
Token string `json:"token" description:"Your agent registration token"`
Name string `json:"name" description:"the name of your job runner node"`
Tags []string `json:"tags" description:"The tags for your runner node"`
}
JobRunnerRegistrationRequest is the request to register a new node
func (*JobRunnerRegistrationRequest) Validate ¶
func (r *JobRunnerRegistrationRequest) Validate() error
Validate ensures the required fields are set on the AgentNodeRegistrationRequest
type ListIntegrationsResponse ¶
type ListIntegrationsResponse struct {
rout.Reply
Integrations any `json:"integrations"` // Will be []*ent.Integration
}
ListIntegrationsResponse is the response for listing integrations
type LoginReply ¶
type LoginReply struct {
rout.Reply
AuthData
TFAEnabled bool `json:"tfa_enabled,omitempty"`
TFASetupRequired bool `json:"tfa_required,omitempty"`
Message string `json:"message"`
}
LoginReply contains authentication tokens and user information after successful login
func (*LoginReply) ExampleResponse ¶
func (r *LoginReply) ExampleResponse() any
ExampleResponse returns an example LoginReply for OpenAPI documentation
type LoginRequest ¶
type LoginRequest struct {
Username string `json:"username" description:"The email address associated with the existing account" example:"jsnow@example.com"`
Password string `json:"password" description:"The password associated with the account" example:"Wint3rIsC0ming123!"`
}
LoginRequest contains credentials for user authentication
func (*LoginRequest) Validate ¶
func (r *LoginRequest) Validate() error
Validate ensures the required fields are set on the LoginRequest request
type OAuthCallbackRequest ¶
type OAuthCallbackRequest struct {
Provider string `json:"provider,omitempty" query:"provider" description:"OAuth provider (extracted from state)"`
Code string `json:"code" query:"code" description:"OAuth authorization code"`
State string `json:"state" query:"state" description:"OAuth state parameter"`
}
OAuthCallbackRequest represents the OAuth callback data
func (*OAuthCallbackRequest) Validate ¶
func (r *OAuthCallbackRequest) Validate() error
Validate ensures the required fields are set on the OAuthCallbackRequest
type OAuthCallbackResponse ¶
type OAuthCallbackResponse struct {
rout.Reply
Success bool `json:"success" description:"Whether the OAuth callback was processed successfully"`
Integration any `json:"integration,omitempty" description:"The created/updated integration object"`
Message string `json:"message" description:"Success or error message" example:"Successfully connected GitHub integration"`
}
OAuthCallbackResponse contains the result of OAuth callback processing
func (*OAuthCallbackResponse) ExampleResponse ¶
func (r *OAuthCallbackResponse) ExampleResponse() any
ExampleResponse returns an example OAuthCallbackResponse for OpenAPI documentation
type OAuthFlowRequest ¶
type OAuthFlowRequest struct {
Provider string `json:"provider" description:"OAuth provider (github, slack, etc.)" example:"github"`
RedirectURI string `` /* 126-byte string literal not displayed */
Scopes []string `json:"scopes,omitempty" description:"Additional OAuth scopes to request"` // example: ["repo", "gist"]
}
OAuthFlowRequest represents the initial OAuth flow request
func (*OAuthFlowRequest) Validate ¶
func (r *OAuthFlowRequest) Validate() error
Validate ensures the required fields are set on the OAuthFlowRequest
type OAuthFlowResponse ¶
type OAuthFlowResponse struct {
rout.Reply
AuthURL string `` /* 141-byte string literal not displayed */
State string `json:"state,omitempty" description:"OAuth state parameter for security" example:"eyJvcmdJRCI6IjAxSE..."`
Message string `` /* 146-byte string literal not displayed */
RequiresLogin bool `json:"requiresLogin,omitempty" description:"Whether user needs to login before OAuth flow"`
}
OAuthFlowResponse contains the OAuth authorization URL
func (*OAuthFlowResponse) ExampleResponse ¶
func (r *OAuthFlowResponse) ExampleResponse() any
ExampleResponse returns an example OAuthFlowResponse for OpenAPI documentation
type OauthTokenRequest ¶
type OauthTokenRequest struct {
Name string `json:"name" description:"The name of the user" example:"Jon Snow"`
Email string `json:"email" description:"The email address of the user" example:"jsnow@example.com"`
AuthProvider string `json:"authProvider" description:"The provider used to authenticate the user, e.g. google, github, etc." example:"google"`
ExternalUserID string `json:"externalUserId" description:"The ID of the user from the external provider" example:"1234567890"`
ExternalUserName string `json:"externalUserName" description:"The username of the user from the external provider" example:"jsnow"`
ClientToken string `json:"clientToken" description:"The token provided by the external provider"`
Image string `json:"image,omitempty" description:"The image URL of the user from the external provider"`
OrgID string `json:"org_id,omitempty" description:"the organization id for the sso connection"`
}
OauthTokenRequest to authenticate an oauth user with the Server
type ProductCatalogReply ¶
ProductCatalogReply holds the fields that are sent on a response to the `/products` endpoint
func (*ProductCatalogReply) ExampleResponse ¶
func (r *ProductCatalogReply) ExampleResponse() any
ExampleResponse returns an example ProductCatalogReply for OpenAPI documentation
type ProductCatalogRequest ¶
type ProductCatalogRequest struct {
IncludeBeta bool `query:"include_beta" description:"Whether to include beta products in the catalog" example:"false"`
IncludePrivate bool `query:"include_private" description:"Whether to include private products in the catalog" example:"false"`
}
ProductCatalogRequest
func (*ProductCatalogRequest) Validate ¶
func (r *ProductCatalogRequest) Validate() error
Validate ensures the required fields are set on the ProductCatalogRequest
type RefreshIntegrationTokenRequest ¶
type RefreshIntegrationTokenRequest struct {
Provider string `param:"provider" description:"OAuth provider (github, slack, etc.)" example:"github"`
}
RefreshIntegrationTokenRequest is the request for refreshing integration tokens
func (*RefreshIntegrationTokenRequest) Validate ¶
func (r *RefreshIntegrationTokenRequest) Validate() error
Validate validates the RefreshIntegrationTokenRequest
type RefreshReply ¶
RefreshReply contains new authentication tokens after successful refresh
func (*RefreshReply) ExampleResponse ¶
func (r *RefreshReply) ExampleResponse() any
ExampleResponse returns an example RefreshReply for OpenAPI documentation
type RefreshRequest ¶
type RefreshRequest struct {
RefreshToken string `json:"refresh_token" description:"The token to be used to refresh the access token after expiration"`
}
RefreshRequest contains the refresh token used to obtain new access tokens
func (*RefreshRequest) Validate ¶
func (r *RefreshRequest) Validate() error
Validate ensures the required fields are set on the RefreshRequest request
type RegisterReply ¶
type RegisterReply struct {
rout.Reply
ID string `json:"user_id" description:"The ID of the user that was created" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
Email string `json:"email" description:"The email address of the user" example:"jsnow@example.com"`
Message string `json:"message"`
Token string `json:"token,omitempty" exclude:"true"` // only used for requests against local development, excluded from OpenAPI documentation
}
RegisterReply contains authentication tokens and user information after successful registration
func (*RegisterReply) ExampleResponse ¶
func (r *RegisterReply) ExampleResponse() any
ExampleResponse returns an example RegisterReply for OpenAPI documentation
type RegisterRequest ¶
type RegisterRequest struct {
FirstName string `json:"first_name,omitempty" description:"The first name of the user" example:"Jon"`
LastName string `json:"last_name,omitempty" description:"The last name of the user" example:"Snow"`
Email string `json:"email,omitempty" description:"The email address of the user" example:"jsnow@example.com"`
Password string `` /* 130-byte string literal not displayed */
Token *string `` /* 126-byte string literal not displayed */
}
RegisterRequest contains user registration information for creating new accounts
func (*RegisterRequest) Validate ¶
func (r *RegisterRequest) Validate() error
Validate ensures the required fields are set on the RegisterRequest request
type ResendReply ¶
ResendReply holds the fields that are sent on a response to the `/resend` endpoint
func (*ResendReply) ExampleResponse ¶
func (r *ResendReply) ExampleResponse() any
ExampleResponse returns an example ResendReply for OpenAPI documentation
type ResendRequest ¶
type ResendRequest struct {
Email string `` /* 134-byte string literal not displayed */
}
ResendRequest contains fields for a resend email verification request to the `/resend` endpoint
func (*ResendRequest) Validate ¶
func (r *ResendRequest) Validate() error
Validate ensures the required fields are set on the ResendRequest request
type ResetPasswordReply ¶
ResetPasswordReply is the response returned from a non-successful password reset request on success, no content is returned (204)
func (*ResetPasswordReply) ExampleResponse ¶
func (r *ResetPasswordReply) ExampleResponse() any
ExampleResponse returns an example ResetPasswordReply for OpenAPI documentation
type ResetPasswordRequest ¶
type ResetPasswordRequest struct {
Password string `json:"password" description:"The new password to be used for authentication"`
Token string `json:"token" description:"The token to be used to reset the password, token is sent via email"`
}
ResetPasswordRequest contains user input required to reset a user's password using /password-reset endpoint
func (*ResetPasswordRequest) Validate ¶
func (r *ResetPasswordRequest) Validate() error
Validate ensures the required fields are set on the ResetPasswordRequest request
type SSOCallbackRequest ¶
type SSOCallbackRequest struct {
Code string `json:"code" query:"code" description:"authorization code" example:"abc"`
State string `json:"state" query:"state" description:"state value" example:"state123"`
OrganizationID string `json:"organization_id" query:"organization_id" description:"organization id" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
}
SSOCallbackRequest holds the query parameters for completing the SSO login flow
func (*SSOCallbackRequest) Validate ¶
func (r *SSOCallbackRequest) Validate() error
Validate ensures the required fields are set on the SSOCallbackRequest
type SSOLoginReply ¶ added in v0.33.1
SSOLoginReply is the response for the SSO login
type SSOLoginRequest ¶
type SSOLoginRequest struct {
OrganizationID string `json:"organization_id" query:"organization_id" description:"organization id" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
ReturnURL string `json:"return" query:"return" description:"return url after authentication" example:"https://app.mitb.com"`
IsTest bool `json:"is_test" query:"is_test" description:"Used when testing the sso was successfully connected"`
}
SSOLoginRequest holds the query parameters for initiating an SSO login flow
func (*SSOLoginRequest) Validate ¶
func (r *SSOLoginRequest) Validate() error
Validate ensures the required fields are set on the SSOLoginRequest
type SSOStatusReply ¶
type SSOStatusReply struct {
rout.Reply
Enforced bool `json:"enforced"`
Provider enums.SSOProvider `json:"provider,omitempty"`
DiscoveryURL string `json:"discovery_url,omitempty"`
SAMLSignInURL string `json:"saml_signin_url,omitempty"`
OrganizationID string `json:"organization_id,omitempty"`
OrgTFAEnforced bool `json:"tfa_enforced"`
UserTFAEnabled bool `json:"user_tfa_enabled,omitempty"`
IsOrgOwner bool `json:"is_org_owner,omitempty"`
}
SSOStatusReply is the response for SSOStatusRequest
func (*SSOStatusReply) ExampleResponse ¶
func (r *SSOStatusReply) ExampleResponse() any
ExampleResponse returns an example SSOStatusReply for OpenAPI documentation
type SSOStatusRequest ¶
type SSOStatusRequest struct {
Resource string `query:"resource" description:"organization or user email to check" example:"org:01J4EXD5MM60CX4YNYN0DEE3Y1"`
}
SSOStatusRequest is the request to check if SSO login is enforced for an organization
func (*SSOStatusRequest) Validate ¶
func (r *SSOStatusRequest) Validate() error
Validate ensures the required fields are set on the SSOStatusRequest request
type SSOTokenAuthorizeReply ¶
type SSOTokenAuthorizeReply struct {
rout.Reply
OrganizationID string `json:"organization_id"`
TokenID string `json:"token_id"`
Message string `json:"message,omitempty"`
}
SSOTokenAuthorizeReply is returned when a token has been successfully authorized for SSO
func (*SSOTokenAuthorizeReply) ExampleResponse ¶
func (r *SSOTokenAuthorizeReply) ExampleResponse() any
ExampleResponse returns an example SSOTokenAuthorizeReply for OpenAPI documentation
type SSOTokenAuthorizeRequest ¶
type SSOTokenAuthorizeRequest struct {
OrganizationID string `json:"organization_id" query:"organization_id" description:"organization id" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
TokenID string `json:"token_id" query:"token_id" description:"token id to authorize" example:"01JJFVMGENQS9ZG3GVA50QVX5E"`
TokenType string `json:"token_type" query:"token_type" description:"token type: api or personal" example:"api"`
}
SSOTokenAuthorizeRequest is the request for authorizing a token for SSO use with an organization
func (*SSOTokenAuthorizeRequest) Validate ¶
func (r *SSOTokenAuthorizeRequest) Validate() error
Validate ensures required fields are set on the SSOTokenAuthorizeRequest
type SSOTokenCallbackRequest ¶
type SSOTokenCallbackRequest struct {
Code string `json:"code" query:"code" description:"authorization code" example:"abc"`
State string `json:"state" query:"state" description:"state value" example:"state123"`
}
SSOTokenCallbackRequest holds the query parameters for completing token SSO authorization
func (*SSOTokenCallbackRequest) Validate ¶
func (r *SSOTokenCallbackRequest) Validate() error
Validate ensures required fields are set on the SSOTokenCallbackRequest
type StartImpersonationReply ¶
type StartImpersonationReply struct {
rout.Reply
Token string `json:"token" description:"The impersonation token"`
ExpiresAt time.Time `json:"expires_at" description:"When the impersonation token expires"`
SessionID string `json:"session_id" description:"The impersonation session ID"`
Message string `json:"message" description:"Success message"`
}
StartImpersonationReply represents the response when starting impersonation
func (*StartImpersonationReply) ExampleResponse ¶
func (r *StartImpersonationReply) ExampleResponse() any
ExampleResponse returns an example StartImpersonationReply for OpenAPI documentation
type StartImpersonationRequest ¶
type StartImpersonationRequest struct {
TargetUserID string `json:"target_user_id" validate:"required" description:"The ID of the user to impersonate"`
Type string `json:"type" validate:"required,oneof=support job admin" description:"The type of impersonation (support, job, admin)"`
Reason string `json:"reason" validate:"required,min=10,max=500" description:"Reason for the impersonation"`
Duration *int `json:"duration_hours,omitempty" description:"Duration in hours (optional, defaults to 1 hour)"`
Scopes []string `json:"scopes,omitempty" description:"Specific scopes for the impersonation session"`
OrganizationID string `json:"organization_id,omitempty" description:"Organization context for impersonation"`
}
StartImpersonationRequest represents a request to start impersonating a user
func (*StartImpersonationRequest) Validate ¶
func (r *StartImpersonationRequest) Validate() error
Validate ensures the required fields are set on the StartImpersonationRequest
type StripeWebhookRequest ¶ added in v0.43.4
type StripeWebhookRequest struct {
APIVersion string `query:"api_version" description:"Stripe API version for this webhook request" example:"2024-11-20.acacia"`
}
StripeWebhookRequest contains the query parameters for Stripe webhook requests
func (*StripeWebhookRequest) Validate ¶ added in v0.43.4
func (r *StripeWebhookRequest) Validate() error
Validate ensures the StripeWebhookRequest is valid
type SwitchOrganizationReply ¶
type SwitchOrganizationReply struct {
rout.Reply
AuthData
NeedsSSO bool `json:"needs_sso,omitempty"`
NeedsTFA bool `json:"needs_tfa,omitempty"`
RedirectURI string `json:"redirect_uri,omitempty"`
}
SwitchOrganizationReply holds the new authentication and session information for the user for the new organization
func (*SwitchOrganizationReply) ExampleResponse ¶
func (r *SwitchOrganizationReply) ExampleResponse() any
ExampleResponse returns an example SwitchOrganizationReply for OpenAPI documentation
type SwitchOrganizationRequest ¶
type SwitchOrganizationRequest struct {
TargetOrganizationID string `json:"target_organization_id" description:"The ID of the organization to switch to" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
}
SwitchOrganizationRequest contains the target organization ID being switched to for the /switch endpoint
func (*SwitchOrganizationRequest) Validate ¶
func (r *SwitchOrganizationRequest) Validate() error
Validate ensures the required fields are set on the SwitchOrganizationRequest request
type TFAReply ¶
TFAReply holds the response to TFARequest
func (*TFAReply) ExampleResponse ¶
ExampleResponse returns an example TFAReply for OpenAPI documentation
type TFARequest ¶
type TFARequest struct {
TOTPCode string `` /* 127-byte string literal not displayed */
RecoveryCode string `` /* 133-byte string literal not displayed */
}
TFARequest holds the payload for verifying the 2fa code (/2fa/validate)
func (*TFARequest) Validate ¶
func (r *TFARequest) Validate() error
Validate ensures the required fields are set on the TFARequest request
type UploadFilesReply ¶
type UploadFilesReply struct {
rout.Reply
Message string `json:"message,omitempty"`
FileCount int64 `json:"file_count,omitempty" description:"The number of files uploaded"`
Files []File `json:"files,omitempty" description:"The files that were uploaded"`
}
UploadFilesReply holds the fields that are sent on a response to the `/upload` endpoint
func (*UploadFilesReply) ExampleResponse ¶
func (r *UploadFilesReply) ExampleResponse() any
ExampleResponse returns an example UploadFilesReply for OpenAPI documentation
type UploadFilesRequest ¶
type UploadFilesRequest struct {
UploadFile multipart.FileHeader `form:"uploadFile" description:"The file to be uploaded"`
}
UploadFilesRequest contains file upload data and metadata
type UserInfoReply ¶
type UserInfoReply struct {
rout.Reply
ID string `json:"id" description:"The ID of the user" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
Email string `json:"email" description:"The email address of the user" example:"jsnow@example.com"`
FirstName string `json:"first_name,omitempty" description:"The first name of the user" example:"Jon"`
LastName string `json:"last_name,omitempty" description:"The last name of the user" example:"Snow"`
DisplayName string `json:"display_name,omitempty" description:"The display name of the user" example:"Jon Snow"`
AvatarRemoteURL *string `json:"avatar_remote_url,omitempty" description:"URL of the user's remote avatar" example:"https://example.com/avatar.jpg"`
LastSeen *string `json:"last_seen,omitempty" description:"The time the user was last seen" example:"2023-01-01T00:00:00Z"`
Role string `json:"role,omitempty" description:"The user's role" example:"ADMIN"`
Sub string `json:"sub" description:"The subject of the user JWT" example:"user123"`
}
UserInfoReply contains user information for authenticated requests
type VerifyReply ¶
type VerifyReply struct {
rout.Reply
ID string `json:"user_id" description:"The ID of the user that was created" example:"01J4EXD5MM60CX4YNYN0DEE3Y1"`
Email string `json:"email" description:"The email address of the user" example:"jsnow@example.com"`
Message string `json:"message,omitempty"`
AuthData
}
VerifyReply holds the fields that are sent on a response to the `/verify` endpoint
func (*VerifyReply) ExampleResponse ¶
func (r *VerifyReply) ExampleResponse() any
ExampleResponse returns an example VerifyReply for OpenAPI documentation
type VerifyRequest ¶
type VerifyRequest struct {
Token string `query:"token" description:"The token to be used to verify the email address, token is sent via email"`
}
VerifyRequest contains email verification token
func (*VerifyRequest) Validate ¶
func (r *VerifyRequest) Validate() error
Validate ensures the required fields are set on the VerifyRequest request
type VerifySubscribeReply ¶
VerifySubscribeReply holds the fields that are sent on a response to the `/subscribe/verify` endpoint
type VerifySubscribeRequest ¶
type VerifySubscribeRequest struct {
Token string `query:"token" description:"The token to be used to verify the subscription, token is sent via email"`
}
VerifySubscribeRequest contains subscription verification information
func (*VerifySubscribeRequest) Validate ¶
func (r *VerifySubscribeRequest) Validate() error
Validate ensures the required fields are set on the VerifySubscribeRequest request
type WebauthnBeginLoginResponse ¶
type WebauthnBeginLoginResponse struct {
Reply rout.Reply
*protocol.CredentialAssertion
Session string `json:"session,omitempty"`
}
WebauthnBeginLoginResponse is the response to begin a webauthn login this includes the credential assertion options and the session token
func (*WebauthnBeginLoginResponse) ExampleResponse ¶
func (r *WebauthnBeginLoginResponse) ExampleResponse() any
ExampleResponse returns an example WebauthnBeginLoginResponse for OpenAPI documentation
type WebauthnBeginRegistrationResponse ¶
type WebauthnBeginRegistrationResponse struct {
Reply rout.Reply
*protocol.CredentialCreation
Session string `json:"session,omitempty"`
}
WebauthnBeginRegistrationResponse is the response to begin a webauthn login this includes the credential creation options and the session token
func (*WebauthnBeginRegistrationResponse) ExampleResponse ¶
func (r *WebauthnBeginRegistrationResponse) ExampleResponse() any
ExampleResponse returns an example WebauthnBeginRegistrationResponse for OpenAPI documentation
type WebauthnLoginFinishRequest ¶
type WebauthnLoginFinishRequest struct {
ID string `json:"id" description:"The credential ID"`
RawID string `json:"rawId" description:"The raw credential ID"`
Type string `json:"type" description:"The credential type, should be 'public-key'"`
AuthenticatorAttachment string `json:"authenticatorAttachment,omitempty" description:"How the authenticator is attached"`
ClientExtensionResults map[string]interface{} `json:"clientExtensionResults,omitempty" description:"Extension results"`
Response struct {
AuthenticatorData string `json:"authenticatorData" description:"The authenticator data"`
ClientDataJSON string `json:"clientDataJSON" description:"The client data JSON"`
Signature string `json:"signature" description:"The assertion signature"`
UserHandle string `json:"userHandle,omitempty" description:"The user handle"`
} `json:"response" description:"The authenticator response"`
}
WebauthnLoginFinishRequest is the request to finish webauthn login This represents the credential assertion response from the browser's WebAuthn API
type WebauthnLoginRequest ¶
type WebauthnLoginRequest struct {
Email string `json:"email,omitempty" description:"The email address associated with the account" example:"jsnow@example.com"`
}
WebauthnLoginRequest is the request to begin a webauthn login
func (*WebauthnLoginRequest) Validate ¶
func (r *WebauthnLoginRequest) Validate() error
Validate ensures the required fields are set on the WebauthnLoginRequest request
type WebauthnLoginResponse ¶
WebauthnLoginResponse is the response after a successful webauthn login
func (*WebauthnLoginResponse) ExampleResponse ¶
func (r *WebauthnLoginResponse) ExampleResponse() any
ExampleResponse returns an example WebauthnLoginResponse for OpenAPI documentation
type WebauthnRegistrationFinishRequest ¶
type WebauthnRegistrationFinishRequest struct {
ID string `json:"id" description:"The credential ID"`
RawID string `json:"rawId" description:"The raw credential ID"`
Type string `json:"type" description:"The credential type, should be 'public-key'"`
AuthenticatorAttachment string `json:"authenticatorAttachment,omitempty" description:"How the authenticator is attached"`
ClientExtensionResults map[string]interface{} `json:"clientExtensionResults,omitempty" description:"Extension results"`
Response struct {
AttestationObject string `json:"attestationObject" description:"The attestation object"`
ClientDataJSON string `json:"clientDataJSON" description:"The client data JSON"`
PublicKey string `json:"publicKey,omitempty" description:"The public key"`
PublicKeyAlgorithm int `json:"publicKeyAlgorithm,omitempty" description:"The public key algorithm"`
Transports []string `json:"transports,omitempty" description:"Available transports"`
AuthenticatorData string `json:"authenticatorData,omitempty" description:"The authenticator data"`
} `json:"response" description:"The authenticator response"`
}
WebauthnRegistrationFinishRequest is the request to finish webauthn registration This represents the credential creation response from the browser's WebAuthn API
type WebauthnRegistrationRequest ¶
type WebauthnRegistrationRequest struct {
Email string `json:"email" description:"The email address associated with the account" example:"jsnow@example.com"`
Name string `json:"name,omitempty" description:"The name of the user" example:"Jon Snow"`
}
WebauthnRegistrationRequest is the request to begin a webauthn login
func (*WebauthnRegistrationRequest) Validate ¶
func (r *WebauthnRegistrationRequest) Validate() error
type WebauthnRegistrationResponse ¶
type WebauthnRegistrationResponse struct {
rout.Reply
Message string `json:"message,omitempty"`
AuthData
}
WebauthnRegistrationResponse is the response after a successful webauthn registration
func (*WebauthnRegistrationResponse) ExampleResponse ¶
func (r *WebauthnRegistrationResponse) ExampleResponse() any
ExampleResponse returns an example WebauthnRegistrationResponse for OpenAPI documentation
type WebfingerRequest ¶
type WebfingerRequest struct {
Resource string `query:"resource" description:"resource identifier prefixed with org: or acct:" example:"acct:meowmeow@kitties.com"`
}
WebfingerRequest represents the query parameters accepted by the `/.well-known/webfinger` endpoint
The `resource` field must be provided and should be prefixed with `org:` for organization lookups or `acct:` for user lookups
func (*WebfingerRequest) Validate ¶
func (r *WebfingerRequest) Validate() error
Validate ensures a valid resource was provided on the WebfingerRequest