# Generated with protoc-gen-openapi # https://github.com/google/gnostic/tree/master/cmd/protoc-gen-openapi openapi: 3.0.3 info: title: IntermediateService API version: 0.0.1 paths: /intermediate/v1/exchange-intermediate-session-for-session: post: tags: - IntermediateService operationId: IntermediateService_ExchangeIntermediateSessionForSession requestBody: content: application/json: schema: $ref: '#/components/schemas/ExchangeIntermediateSessionForSessionRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExchangeIntermediateSessionForSessionResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/get-passkey-options: post: tags: - IntermediateService operationId: IntermediateService_GetPasskeyOptions requestBody: content: application/json: schema: $ref: '#/components/schemas/GetPasskeyOptionsRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/GetPasskeyOptionsResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/google-oauth-redirect-url: post: tags: - IntermediateService operationId: IntermediateService_GetGoogleOAuthRedirectURL requestBody: content: application/json: schema: $ref: '#/components/schemas/GetGoogleOAuthRedirectURLRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/GetGoogleOAuthRedirectURLResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/intermediate-session: post: tags: - IntermediateService operationId: IntermediateService_CreateIntermediateSession requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateIntermediateSessionRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/CreateIntermediateSessionResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/issue-email-verification-challenge: post: tags: - IntermediateService operationId: IntermediateService_IssueEmailVerificationChallenge requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueEmailVerificationChallengeRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/IssueEmailVerificationChallengeResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/microsoft-oauth-redirect-url: post: tags: - IntermediateService operationId: IntermediateService_GetMicrosoftOAuthRedirectURL requestBody: content: application/json: schema: $ref: '#/components/schemas/GetMicrosoftOAuthRedirectURLRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/GetMicrosoftOAuthRedirectURLResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/organizations: get: tags: - IntermediateService operationId: IntermediateService_ListOrganizations responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ListOrganizationsResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' post: tags: - IntermediateService operationId: IntermediateService_CreateOrganization requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateOrganizationRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/CreateOrganizationResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/redeem-google-oauth-code: post: tags: - IntermediateService operationId: IntermediateService_RedeemGoogleOAuthCode requestBody: content: application/json: schema: $ref: '#/components/schemas/RedeemGoogleOAuthCodeRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/RedeemGoogleOAuthCodeResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/redeem-microsoft-oauth-code: post: tags: - IntermediateService operationId: IntermediateService_RedeemMicrosoftOAuthCode requestBody: content: application/json: schema: $ref: '#/components/schemas/RedeemMicrosoftOAuthCodeRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/RedeemMicrosoftOAuthCodeResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/redeem-user-impersonation-token: post: tags: - IntermediateService operationId: IntermediateService_RedeemUserImpersonationToken requestBody: content: application/json: schema: $ref: '#/components/schemas/RedeemUserImpersonationTokenRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/RedeemUserImpersonationTokenResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/register-passkey: post: tags: - IntermediateService operationId: IntermediateService_RegisterPasskey requestBody: content: application/json: schema: $ref: '#/components/schemas/RegisterPasskeyRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/RegisterPasskeyResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/register-password: post: tags: - IntermediateService operationId: IntermediateService_RegisterPassword requestBody: content: application/json: schema: $ref: '#/components/schemas/RegisterPasswordRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/RegisterPasswordResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/saml-organizations: post: tags: - IntermediateService operationId: IntermediateService_ListSAMLOrganizations requestBody: content: application/json: schema: $ref: '#/components/schemas/ListSAMLOrganizationsRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ListSAMLOrganizationsResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/set-organization: post: tags: - IntermediateService operationId: IntermediateService_SetOrganization parameters: - name: organizationId in: query schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/SetOrganizationResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/verify-email-challenge: post: tags: - IntermediateService operationId: IntermediateService_VerifyEmailChallenge requestBody: content: application/json: schema: $ref: '#/components/schemas/VerifyEmailChallengeRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VerifyEmailChallengeResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/verify-password: post: tags: - IntermediateService operationId: IntermediateService_VerifyPassword requestBody: content: application/json: schema: $ref: '#/components/schemas/VerifyPasswordRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VerifyPasswordResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /intermediate/v1/whoami: get: tags: - IntermediateService operationId: IntermediateService_Whoami responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/WhoamiResponse' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' components: schemas: CreateIntermediateSessionRequest: type: object properties: {} CreateIntermediateSessionResponse: type: object properties: intermediateSessionSecretToken: type: string CreateOrganizationRequest: type: object properties: displayName: type: string CreateOrganizationResponse: type: object properties: {} ExchangeIntermediateSessionForSessionRequest: type: object properties: organizationId: type: string ExchangeIntermediateSessionForSessionResponse: type: object properties: refreshToken: type: string accessToken: type: string GetGoogleOAuthRedirectURLRequest: type: object properties: redirectUrl: type: string GetGoogleOAuthRedirectURLResponse: type: object properties: url: type: string GetMicrosoftOAuthRedirectURLRequest: type: object properties: redirectUrl: type: string GetMicrosoftOAuthRedirectURLResponse: type: object properties: url: type: string GetPasskeyOptionsRequest: type: object properties: {} GetPasskeyOptionsResponse: type: object properties: rpId: type: string rpName: type: string userId: type: string userDisplayName: type: string GoogleProtobufAny: type: object properties: '@type': type: string description: The type of the serialized message. additionalProperties: true description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message. IntermediateSession: type: object properties: id: type: string projectId: type: string email: type: string emailVerified: type: boolean googleUserId: type: string googleHostedDomain: type: string microsoftUserId: type: string microsoftTenantId: type: string organizationId: type: string passwordVerified: type: boolean newUserPasswordRegistered: type: boolean emailVerificationChallengeRegistered: type: boolean IssueEmailVerificationChallengeRequest: type: object properties: email: type: string IssueEmailVerificationChallengeResponse: type: object properties: {} ListOrganizationsResponse: type: object properties: organizations: type: array items: $ref: '#/components/schemas/Organization' ListSAMLOrganizationsRequest: type: object properties: email: type: string ListSAMLOrganizationsResponse: type: object properties: organizations: type: array items: $ref: '#/components/schemas/Organization' Organization: type: object properties: id: type: string projectId: type: string displayName: type: string logInWithGoogleEnabled: type: boolean logInWithMicrosoftEnabled: type: boolean logInWithPasswordEnabled: type: boolean primarySamlConnectionId: type: string userExists: type: boolean userHasPassword: type: boolean userHasAuthenticatorApp: type: boolean userHasPasskey: type: boolean RedeemGoogleOAuthCodeRequest: type: object properties: code: type: string state: type: string redirectUrl: type: string RedeemGoogleOAuthCodeResponse: type: object properties: {} RedeemMicrosoftOAuthCodeRequest: type: object properties: code: type: string state: type: string redirectUrl: type: string RedeemMicrosoftOAuthCodeResponse: type: object properties: {} RedeemUserImpersonationTokenRequest: type: object properties: secretUserImpersonationToken: type: string RedeemUserImpersonationTokenResponse: type: object properties: refreshToken: type: string accessToken: type: string RegisterPasskeyRequest: type: object properties: attestationObject: type: string RegisterPasskeyResponse: type: object properties: {} RegisterPasswordRequest: type: object properties: password: type: string RegisterPasswordResponse: type: object properties: {} SetOrganizationResponse: type: object properties: {} Status: type: object properties: code: type: integer description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code]. format: int32 message: type: string description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client. details: type: array items: $ref: '#/components/schemas/GoogleProtobufAny' description: A list of messages that carry the error details. There is a common set of message types for APIs to use. description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).' VerifyEmailChallengeRequest: type: object properties: code: type: string VerifyEmailChallengeResponse: type: object properties: {} VerifyPasswordRequest: type: object properties: organizationId: type: string password: type: string VerifyPasswordResponse: type: object properties: {} WhoamiResponse: type: object properties: intermediateSession: $ref: '#/components/schemas/IntermediateSession' tags: - name: IntermediateService