Alphaus Admin API
Admin API. Base URL: https://api.alphaus.cloud/m/blue
Admin API. Base URL: https://api.alphaus.cloud/m/blue
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