Alphaus Admin API

Admin API. Base URL: https://api.alphaus.cloud/m/blue

OpenAPI Specification

alphaus-admin-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Blue API reference Admin API
  description: 'Alphaus provides an API for interacting with its services. Blue API is a RESTful API that
    can be accessed by an HTTP client such as `curl`, or any HTTP library which is part of most modern
    programming languages. This API reference is autogenerated from [protocol buffers](https://developers.google.com/protocol-buffers)
    defined in this [repository](https://github.com/alphauslabs/blueapi), together with our supported
    [client libraries](https://alphauslabs.github.io/docs/blueapi/client-sdks/). See the official [documentation](https://alphauslabs.github.io/docs/blueapi/overview/)
    for more information.


    You may encounter the following feature maturity indicators:

    - **(WORK-IN-PROGRESS)** - Development is ongoing, don''t use yet;

    - **(BETA)** - New or experimental features, subject to changes; and

    - **(DEPRECATED)** - Outdated or replaced features.


    Some endpoints, especially those that return lists of resources, have streaming responses; newline-separated
    stream of “chunks”. Each chunk is an envelope that can contain either a response message or an error.
    Only the last chunk will include an error, if any.'
  version: v1
host: api.alphaus.cloud
basePath: /m/blue
schemes:
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: Admin
  description: 'Admin API. Base URL: https://api.alphaus.cloud/m/blue'
  externalDocs:
    description: Service definition
    url: https://github.com/alphauslabs/blueapi/tree/main/admin/
paths:
  /admin/v1/acctgroups:
    get:
      summary: Lists all account groups.
      operationId: Admin_ListAccountGroups
      responses:
        '200':
          description: A successful response.(streaming responses)
          schema:
            type: object
            properties:
              result:
                $ref: '#/definitions/v1ListAccountGroupsResponse'
              error:
                $ref: '#/definitions/rpcStatus'
            title: Stream result of v1ListAccountGroupsResponse
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
  /admin/v1/acctgroups/{id}:
    get:
      summary: Gets an account group.
      operationId: Admin_GetAccountGroup
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetAccountGroupResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        in: path
        required: true
        type: string
      tags:
      - Admin
  /admin/v1/auditlogs:export:
    post:
      summary: 'WORK-IN-PROGRESS: Exports audit logs for login user''s organization.'
      operationId: Admin_ExportAuditLogs
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiAuditExport'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the ExportAuditLogs rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1ExportAuditLogsRequest'
      tags:
      - Admin
  /admin/v1/aws/reports/proforma:
    post:
      summary: 'WORK-IN-PROGRESS: Configure AWS Proforma Cost and Usage Report.'
      operationId: Admin_CreateProformaCur
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1ProformaCur'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateProformaCurRequest'
      tags:
      - Admin
  /admin/v1/aws/xacct/cwms:
    get:
      summary: 'WORK-IN-PROGRESS: Gets a CloudFormation launch URL for enabling CloudWatch metrics streaming
        on a target account.'
      operationId: Admin_GetCloudWatchMetricsStreamTemplateUrl
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetCloudWatchMetricsStreamTemplateUrlResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
    post:
      summary: 'WORK-IN-PROGRESS: Starts validation of a CloudWatch Metrics streaming stack deployment.'
      operationId: Admin_CreateCloudWatchMetricsStream
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1CloudWatchMetricsStream'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.CreateCloudWatchMetricsStream rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateCloudWatchMetricsStreamRequest'
      tags:
      - Admin
  /admin/v1/aws/xacct/dca:
    get:
      summary: Gets a CloudFormation launch URL for enabling the default cross-account access to your
        account's cost information based on type. See comments on the type for more information on what
        each template does.
      operationId: Admin_GetDefaultCostAccessTemplateUrl
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetDefaultCostAccessTemplateUrlResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: type
        description: "Optional. Valid values are `default`, `s3only`, and `apionly`. Defaults to `default`\
          \ if empty.\n\n`default` - Template for setting up both CUR export and read-only access to cost\
          \ information. If selected, you need to deploy this template to `us-east-1` region as CloudFormation\
          \ only supports the `AWS::CUR::ReportDefinition` in that region at the moment. The target S3\
          \ bucket will also be created in that region. If you prefer your S3 bucket to be located in\
          \ a different region, you can use the template from this API by setting the type to `s3only`.\
          \ After your S3 bucket is ready, call this API again (type is `default`) and set the `CurS3BucketOption`\
          \ parameter to `USE_EXISTING`, then set your bucket name and region accordingly. This is the\
          \ default for Ripple, unless specified otherwise.\n\n`apionly` - Template for setting up ready-only\
          \ access to cost information. Handy if you already have exported your CUR to Alphaus through\
          \ other means (i.e. manual setup). This template is the same as the `default` type but without\
          \ the CUR export definitions. Although not required, we recommend you to deploy this template\
          \ to allow us to query your cost-related information such as Reserved Instances, Saving Plans,\
          \ etc. through the AWS API. At the moment, we only rely on CUR data which is a best-effort basis\
          \ and sometimes not accurate. This is the default for Wave(Pro), unless specified otherwise.\n\
          \n`s3only` - A helper template for creating an S3 bucket to be used for CUR export.\n\n`default-2.0`-\
          \ For default cur 2.0 templates. \n\n`s3only-2.0` - For s3only cur 2.0 templates.\n\nAll templates\
          \ are publicly available from the reponse link (`templateUrl`) if you want to audit the included\
          \ permissions."
        in: query
        required: false
        type: string
      tags:
      - Admin
    post:
      summary: Starts validation of a default cross-account access stack deployment. If successful, the
        IAM role created from the CloudFormation stack will be registered to the target.
      operationId: Admin_CreateDefaultCostAccess
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1DefaultCostAccess'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.CreateDefaultCostAccess rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateDefaultCostAccessRequest'
      tags:
      - Admin
  /admin/v1/aws/xacct/dca/all:read:
    post:
      summary: Lists the default cross-account access role(s) attached to accounts under caller.
      operationId: Admin_ListDefaultCostAccess
      responses:
        '200':
          description: A successful response.(streaming responses)
          schema:
            type: object
            properties:
              result:
                $ref: '#/definitions/v1DefaultCostAccess'
              error:
                $ref: '#/definitions/rpcStatus'
            title: Stream result of v1DefaultCostAccess
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
  /admin/v1/aws/xacct/dca/{target}:
    get:
      summary: Gets the current default cross-account role attached to the input target.
      operationId: Admin_GetDefaultCostAccess
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1DefaultCostAccess'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: target
        description: Required. The target AWS account to query.
        in: path
        required: true
        type: string
      tags:
      - Admin
    delete:
      summary: Deletes the current default cross-account access role attached to this target account.
        This does not delete the CloudFormation deployment in your account.
      operationId: Admin_DeleteDefaultCostAccess
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties: {}
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: target
        description: Required. The target AWS account to delete.
        in: path
        required: true
        type: string
      tags:
      - Admin
    put:
      summary: Starts an update to an existing default cross-account access CloudFormation stack for template
        changes, if any. Only call this API if the status of your default cross-account access is 'outdated'.
      operationId: Admin_UpdateDefaultCostAccess
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/protosOperation'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: target
        description: Required. The target AWS account to update.
        in: path
        required: true
        type: string
      tags:
      - Admin
  /admin/v1/defaultmeta:
    put:
      summary: 'WORK-IN-PROGRESS: Set the default meta saved per organization'
      operationId: Admin_UpdateMSPDefaultMeta
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties: {}
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1UpdateMSPDefaultMetaRequest'
      tags:
      - Admin
  /admin/v1/defaultmeta/{mspId}:
    get:
      summary: 'WORK-IN-PROGRESS: Fetch the default meta saved per organization'
      operationId: Admin_GetMSPDefaultMeta
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetMSPDefaultMetaResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: mspId
        in: path
        required: true
        type: string
      tags:
      - Admin
  /admin/v1/notification/channels:
    get:
      summary: Lists all notification channels for login user's organization or group.
      operationId: Admin_ListNotificationChannels
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1ListNotificationChannelsResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
    post:
      summary: 'WORK-IN-PROGRESS: Creates notification settings for login user''s organization or group.'
      operationId: Admin_CreateNotificationChannel
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationChannel'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.CreateNotificationChannel rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateNotificationChannelRequest'
      tags:
      - Admin
  /admin/v1/notification/channels/{id}:
    get:
      summary: Gets notification channel for login user's organization or group.
      operationId: Admin_GetNotificationChannel
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationChannel'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        in: path
        required: true
        type: string
      - name: fieldMask
        description: Optional.
        in: query
        required: false
        type: string
      tags:
      - Admin
    delete:
      summary: Deletes notification settings for login user's organization or group.
      operationId: Admin_DeleteNotificationChannel
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties: {}
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        description: Required. ID of the notification channel to delete.
        in: path
        required: true
        type: string
      tags:
      - Admin
    put:
      summary: 'WORK-IN-PROGRESS: Updates notification settings for login user''s organization or group.'
      operationId: Admin_UpdateNotificationChannel
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationChannel'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        description: Required. ID of the notification channel to update.
        in: path
        required: true
        type: string
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/AdminUpdateNotificationChannelBody'
      tags:
      - Admin
  /admin/v1/notification/default:
    post:
      summary: Creates a default notification channel of type email based on the caller's primary email
        address.
      operationId: Admin_CreateDefaultNotificationChannel
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationChannel'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.CreateDefaultNotificationChannel rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateDefaultNotificationChannelRequest'
      tags:
      - Admin
  /admin/v1/notification/settings:
    get:
      summary: Get notification settings for login user's organization or group.
      operationId: Admin_GetNotificationSettings
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationSettings'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
    post:
      summary: Creates or updates notification settings for login user's organization or group.
      operationId: Admin_SaveNotificationSettings
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/apiNotificationSettings'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.SaveNotificationSettings rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1SaveNotificationSettingsRequest'
      tags:
      - Admin
  /admin/v1/notifications:
    get:
      summary: 'WORK-IN-PROGRESS: List all notification for login user''s organization.'
      operationId: Admin_ListNotifications
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1ListNotificationsResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      tags:
      - Admin
    post:
      summary: 'WORK-IN-PROGRESS: Creates notification for login user''s organization.'
      operationId: Admin_CreateNotification
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/blueapiApiNotification'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        description: Request message for the Admin.CreateNotificationTypeChannels rpc.
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1CreateNotificationRequest'
      tags:
      - Admin
  /admin/v1/notifications/{id}:
    get:
      summary: 'WORK-IN-PROGRESS: Get notifications for login user''s organization.'
      operationId: Admin_GetNotification
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/blueapiApiNotification'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        description: Required
        in: path
        required: true
        type: string
      - name: notificationType
        description: 'Required

          Valid values:

          `InvoiceCalculationStarted`,

          `InvoiceCalculationFinished`,

          `CurUpdatedAfterInvoice`.

          `AccountBudgetAlert`.'
        in: query
        required: false
        type: string
      tags:
      - Admin
    delete:
      summary: 'WORK-IN-PROGRESS: Deletes notification for login user''s organization.'
      operationId: Admin_DeleteNotification
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties: {}
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        description: Required
        in: path
        required: true
        type: string
      - name: notificationType
        description: 'Required

          Valid values:

          `InvoiceCalculationStarted`,

          `InvoiceCalculationFinished`,

          `CurUpdatedAfterInvoice`.

          `AccountBudgetAlert`.'
        in: query
        required: false
        type: string
      tags:
      - Admin
    put:
      summary: 'WORK-IN-PROGRESS: Updates notification for login user''s organization.'
      operationId: Admin_UpdateNotification
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/blueapiApiNotification'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: id
        description: Required
        in: path
        required: true
        type: string
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/AdminUpdateNotificationBody'
      tags:
      - Admin
  /admin/v1/wavefeatures:
    get:
      summary: 'WORK-IN-PROGRESS: Get settings value for wave features management per organization'
      operationId: Admin_GetWaveFeatures
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetWaveFeaturesResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: lang
        in: query
        required: false
        type: string
      tags:
      - Admin
    put:
      summary: 'WORK-IN-PROGRESS: Updates the wave feature management default value per organization'
      operationId: Admin_UpdateWaveFeatureSetting
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/v1GetWaveFeaturesResponse'
        default:
          description: An unexpected error response.
          schema:
            $ref: '#/definitions/rpcStatus'
      parameters:
      - name: body
        in: body
        required: true
        schema:
          $ref: '#/definitions/v1UpdateWaveFeatureSettingRequest'
      tags:
      - Admin
definitions:
  protosOperation:
    type: object
    properties:
      name:
        type: string
        description: The server-assigned name.
      metadata:
        $ref: '#/definitions/protobufAny'
        description: 'Service-specific metadata associated with the operation. It typically

          contains progress information and common metadata such as create time.

          Some services might not provide such metadata. Any method that returns a

          long-running operation should document the metadata type, if any.'
      done:
        type: boolean
        description: 'If the value is `false`, it means the operation is still in progress.

          If `true`, the operation is completed, and either `error` or `response` is

          available.'
      error:
        $ref: '#/definitions/rpcStatus'
        description: The error result of the operation in case of failure or cancellation.
      response:
        $ref: '#/definitions/protobufAny'
        description: 'The normal response of the operation in case of success. If the original method
          returns

          no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the

          original method is standard `Get`/`Create`/`Update`, the response should be the

          resource. For other methods, the response should have the type `XxxResponse`, where

          `Xxx` is the original method name. For example, if the original method name is

          `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.'
    description: 'This resource represents a long-running operation that is the result of a

      network API call.'
  apiAccountGroup:
    type: object
    properties:
      id:
        type: string
        description: The AccountGroup id.
      name:
        type: string
        description: The AccountGroup name.
      metadata:
        type: array
        items:
          type: object
          $ref: '#/definitions/apiKeyValue'
        description: The attributes (key/value pair) of the AccountGroup.
      accounts:
        type: array
        items:
          type: object
          $ref: '#/definitions/blueapiApiAccount'
  v1ListNotificationChannelsResponse:
    type: object
    properties:
      channels:
        type: array
        items:
          type: object
          $ref: '#/definitions/apiNotificationChannel'
    description: Response message for the Admin.ListNotificationChannels rpc.
  apiKeyValue:
    type: object
    properties:
      key:
        type: string
      value:
        type: string
  rpcStatus:
    type: object
    properties:
      code:
        type: integer
        format: int32
        description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
      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:
          type: object
          $ref: '#/definitions/protobufAny'
        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).'
  adminV1NotificationAccount:
    type: object
    properties:
      vendor:
        type: string
        description: Required.
      accountId:
        type: string
        description: Required.
  v1CreateDefaultNotificationChannelRequest:
    type: object
    description: Request message for the Admin.CreateDefaultNotificationChannel rpc.
  AdminUpdateNotificationBody:
    type: object
    properties:
      channels:
        type: array
        items:
          type: string
        title: Required
      enabled:
        type: boolean
        title: Required
      notificationType:
        type: string
        description: 'Required

          Valid values:

          `InvoiceCalculationStarted`,

          `InvoiceCalculationFinished`,

          `CurUpdatedAfterInvoice`.

          `AccountBudgetAlert`.'
      account:
        $ref: '#/definitions/adminV1NotificationAccount'
        description: Optional. only available Wave(Pro).
    description: Request message for the Admin.UpdateNotificationTypeChannels rpc.
  apiSlackChannel:
    type: object
    properties:
      webhookUrl:
        type: string
      channelId:
        type: string
      channel:
        type: string
      configurationUrl:
        type: string
      code:
        type: string
      redirectUri:
        type: string
  apiMSTeamsChannel:
    type: object
    properties:
      webhookUrl:
        type: string
  AdminUpdateNotificationChannelBody:
    type: object
    properties:
      name:
        type: string
        description: Required. Name of the notification channel.
      type:
        type: string
        description: 'Required. Valid values: `email`, `slack`, `msteams`.'
      email:
        $ref: '#/definitions/apiEmailChannel'
        description: Required if type = `email`.
      slack:
        $ref: '#/definitions/apiSlackChannel'
        description: Required if type = `slack`.
      msteams:
        $ref: '#/definitions/apiMSTeamsChannel'
        description: Required if type = `msteams`.
      product:
        type: string
        description: 'Optional. For Octo use only: `octo`.'
    description: Request message for the Admin.UpdateNotificationChannel rpc.
  apiNotificationChannel:
    type: object
    properties:
      id:
        type: string
      enabled:
        type: boolean
      name:
        type: string
      type:
        type: string
      email:
        $ref: '#/definitions/apiEmailChannel'
      slack:
        $ref: '#/definitions/apiSlackChannel'
      msteams:
        $ref: '#/definitions/apiMSTeamsChannel'
      product:
        type: string
  v1ExportAuditLogsRequest:
    type: object
    properties:
      format:
        type: string
        description: Required. At the moment, `CSV`,`JSON` is supported.
      startTime:
        type: string
        description: 'Required. The UTC date to start data from. If not set, the first day of the current
          year will be used. Format: `yyyymmdd`.'
      endTime:
        type: string
        description: 'Required. The UTC date to end data from. If not set, the first day of the current
          year will be used. Format: `yyyymmdd`.'
      product:
        type: string
        description: Optional. Valid values are 'ripple' and 'wavepro' for now. If empty default is 'ripple'.
      waveUserIds:
        type: array
        items:
          type: string
        description: Optional. Must not be empty if product is 'wavepro'. Return logs for these userIds
          only.
    description: Request message for the ExportAuditLogs rpc.
  v1GetWaveFeaturesResponse:
    type: object
    properties:
      settings:
        type: array
        items:
          type: object
          $ref: '#/definitions/v1WaveFeature'
  v1GetCloudWatchMetricsStreamTemplateUrlResponse:
    type: object
    properties:
      launchUrl:
        type: string
        description: The CloudFormation launch url. Open it in your browser.
      templateUrl:
        type: string
        description: The latest CloudFormation template. The version is included in the filename.
      stackName:
        type: string
        description: The default stack name used. Can be modified.
      externalId:
        type: string
        description: The external id for this role. Do not change.
    description: Response message for the Admin.GetCloudWatchMetricsStreamTemplateUrl rpc.
  v1GetDefaultCostAccessTemplateUrlResponse:
    type: object
    properties:
      launchUrl:
        type: string
        description: The CloudFormation launch url. Open it in your browser.
      templateUrl:
        type: string
        description: The latest CloudFormation template. The version is included in the filename.
      stackName:
        type: string
        description: The default stack name used. Can be modified.
      principal:
        type: string
        description: The AWS account that will receive the access. Do not change.
      externalId:
        type: string
        description: The external id for this role. Do not change.
    description: Response message for the Admin.GetDefaultCostAccessTemplateUrl rpc.
  v1UpdateWaveFeatureSettingRequest:
    type: object
    properties:
      lang:
        type: string
      featureSetting:
        type: array
        items:
          type: object
          $ref: '#/definitions/v1FeatureSetting'
  protobufAny:
    type: object
    properties:
      '@type':
        type: string
        description: "A URL/resource name that uniquely identifies the type of the serialized\nprotocol\
          \ buffer message. This string must contain at least\none \"/\" character. The last segment of\
          \ the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`)

# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/alphaus/refs/heads/main/openapi/alphaus-admin-api-openapi.yml