diff --git a/crates/tower-api/README.md b/crates/tower-api/README.md index d20a2c3e..52a695e0 100644 --- a/crates/tower-api/README.md +++ b/crates/tower-api/README.md @@ -8,9 +8,9 @@ For more information, please visit [https://tower.dev](https://tower.dev) This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client. -- API version: v0.9.9 +- API version: v0.9.29 - Package version: 1.0.0 -- Generator version: 7.13.0 +- Generator version: 7.19.0 - Build package: `org.openapitools.codegen.languages.RustClientCodegen` ## Installation @@ -31,6 +31,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**acknowledge_all_alerts**](docs/DefaultApi.md#acknowledge_all_alerts) | **POST** /alerts/acknowledge-all | Acknowledge all alerts *DefaultApi* | [**activate_schedules**](docs/DefaultApi.md#activate_schedules) | **PATCH** /schedules/activate | Activate multiple schedules *DefaultApi* | [**cancel_run**](docs/DefaultApi.md#cancel_run) | **POST** /apps/{name}/runs/{seq} | Cancel run +*DefaultApi* | [**check_webhook**](docs/DefaultApi.md#check_webhook) | **POST** /webhooks/{name}/test | Check webhook *DefaultApi* | [**claim_device_login_ticket**](docs/DefaultApi.md#claim_device_login_ticket) | **POST** /login/device/claim | Claim a device login ticket *DefaultApi* | [**create_account**](docs/DefaultApi.md#create_account) | **POST** /accounts | Create account *DefaultApi* | [**create_api_key**](docs/DefaultApi.md#create_api_key) | **POST** /api-keys | Create API Key @@ -45,6 +46,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**create_secret**](docs/DefaultApi.md#create_secret) | **POST** /secrets | Create secret *DefaultApi* | [**create_session**](docs/DefaultApi.md#create_session) | **POST** /session | Create session *DefaultApi* | [**create_team**](docs/DefaultApi.md#create_team) | **POST** /teams | Create team +*DefaultApi* | [**create_webhook**](docs/DefaultApi.md#create_webhook) | **POST** /webhooks | Create webhook *DefaultApi* | [**deactivate_schedules**](docs/DefaultApi.md#deactivate_schedules) | **PATCH** /schedules/deactivate | Deactivate multiple schedules *DefaultApi* | [**delete_alert**](docs/DefaultApi.md#delete_alert) | **DELETE** /alerts/{alert_id} | Delete alert *DefaultApi* | [**delete_api_key**](docs/DefaultApi.md#delete_api_key) | **DELETE** /api-keys | Delete API key @@ -53,19 +55,25 @@ Class | Method | HTTP request | Description *DefaultApi* | [**delete_catalog**](docs/DefaultApi.md#delete_catalog) | **DELETE** /catalogs/{name} | Delete catalog *DefaultApi* | [**delete_schedule**](docs/DefaultApi.md#delete_schedule) | **DELETE** /schedules | Delete schedule *DefaultApi* | [**delete_secret**](docs/DefaultApi.md#delete_secret) | **DELETE** /secrets/{name} | Delete secret +*DefaultApi* | [**delete_session**](docs/DefaultApi.md#delete_session) | **DELETE** /session | Delete session *DefaultApi* | [**delete_team**](docs/DefaultApi.md#delete_team) | **DELETE** /teams | Delete team *DefaultApi* | [**delete_team_invitation**](docs/DefaultApi.md#delete_team_invitation) | **DELETE** /teams/{name}/invites | Delete team invitation +*DefaultApi* | [**delete_webhook**](docs/DefaultApi.md#delete_webhook) | **DELETE** /webhooks/{name} | Delete webhook *DefaultApi* | [**deploy_app**](docs/DefaultApi.md#deploy_app) | **POST** /apps/{name}/deploy | Deploy app *DefaultApi* | [**describe_account**](docs/DefaultApi.md#describe_account) | **GET** /accounts/{name} | Describe account *DefaultApi* | [**describe_app**](docs/DefaultApi.md#describe_app) | **GET** /apps/{name} | Describe app *DefaultApi* | [**describe_app_version**](docs/DefaultApi.md#describe_app_version) | **GET** /apps/{name}/versions/{num} | Describe app version +*DefaultApi* | [**describe_authentication_context**](docs/DefaultApi.md#describe_authentication_context) | **GET** /user/auth-context | Describe authentication context *DefaultApi* | [**describe_device_login_session**](docs/DefaultApi.md#describe_device_login_session) | **GET** /login/device/{device_code} | Describe device login session *DefaultApi* | [**describe_email_preferences**](docs/DefaultApi.md#describe_email_preferences) | **GET** /user/email-preferences | Describe email preferences +*DefaultApi* | [**describe_plan**](docs/DefaultApi.md#describe_plan) | **GET** /plan | Describe plan *DefaultApi* | [**describe_run**](docs/DefaultApi.md#describe_run) | **GET** /apps/{name}/runs/{seq} | Describe run *DefaultApi* | [**describe_run_graph**](docs/DefaultApi.md#describe_run_graph) | **GET** /apps/{name}/runs/{seq}/graph | Describe run graph *DefaultApi* | [**describe_run_logs**](docs/DefaultApi.md#describe_run_logs) | **GET** /apps/{name}/runs/{seq}/logs | Describe run logs *DefaultApi* | [**describe_secrets_key**](docs/DefaultApi.md#describe_secrets_key) | **GET** /secrets/key | Describe encryption key *DefaultApi* | [**describe_session**](docs/DefaultApi.md#describe_session) | **GET** /session | Describe session +*DefaultApi* | [**describe_team**](docs/DefaultApi.md#describe_team) | **GET** /teams/{name} | Describe team +*DefaultApi* | [**describe_webhook**](docs/DefaultApi.md#describe_webhook) | **GET** /webhooks/{name} | Describe webhook *DefaultApi* | [**export_catalogs**](docs/DefaultApi.md#export_catalogs) | **POST** /catalogs/export | Export catalogs *DefaultApi* | [**export_secrets**](docs/DefaultApi.md#export_secrets) | **POST** /secrets/export | Export secrets *DefaultApi* | [**generate_app_statistics**](docs/DefaultApi.md#generate_app_statistics) | **GET** /stats/apps | Generate app statistics @@ -83,7 +91,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**list_catalogs**](docs/DefaultApi.md#list_catalogs) | **GET** /catalogs | List catalogs *DefaultApi* | [**list_environments**](docs/DefaultApi.md#list_environments) | **GET** /environments | List environments *DefaultApi* | [**list_my_team_invitations**](docs/DefaultApi.md#list_my_team_invitations) | **GET** /team-invites | List my team invitations -*DefaultApi* | [**list_plans**](docs/DefaultApi.md#list_plans) | **GET** /plans | List account plans *DefaultApi* | [**list_runners**](docs/DefaultApi.md#list_runners) | **GET** /runners | List runners *DefaultApi* | [**list_runs**](docs/DefaultApi.md#list_runs) | **GET** /apps/{name}/runs | List runs *DefaultApi* | [**list_schedules**](docs/DefaultApi.md#list_schedules) | **GET** /schedules | List schedules @@ -92,6 +99,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**list_team_invitations**](docs/DefaultApi.md#list_team_invitations) | **GET** /teams/{name}/invites | List team invitations *DefaultApi* | [**list_team_members**](docs/DefaultApi.md#list_team_members) | **GET** /teams/{name}/members | List team members *DefaultApi* | [**list_teams**](docs/DefaultApi.md#list_teams) | **GET** /teams | List teams +*DefaultApi* | [**list_webhooks**](docs/DefaultApi.md#list_webhooks) | **GET** /webhooks | List webhooks *DefaultApi* | [**refresh_session**](docs/DefaultApi.md#refresh_session) | **POST** /session/refresh | Refresh session *DefaultApi* | [**remove_team_member**](docs/DefaultApi.md#remove_team_member) | **DELETE** /teams/{name}/members | Remove team member *DefaultApi* | [**resend_email_verification**](docs/DefaultApi.md#resend_email_verification) | **POST** /user/resend-verification | Resent email verification @@ -100,18 +108,22 @@ Class | Method | HTTP request | Description *DefaultApi* | [**search_runs**](docs/DefaultApi.md#search_runs) | **GET** /runs | Search runs *DefaultApi* | [**stream_alerts**](docs/DefaultApi.md#stream_alerts) | **GET** /alerts/stream | Stream alert notifications *DefaultApi* | [**stream_run_logs**](docs/DefaultApi.md#stream_run_logs) | **GET** /apps/{name}/runs/{seq}/logs/stream | Stream run logs +*DefaultApi* | [**stream_shouldertaps**](docs/DefaultApi.md#stream_shouldertaps) | **GET** /shouldertaps/stream | Stream shouldertaps *DefaultApi* | [**update_account**](docs/DefaultApi.md#update_account) | **PUT** /accounts/{name} | Update account *DefaultApi* | [**update_app**](docs/DefaultApi.md#update_app) | **PUT** /apps/{name} | Update app *DefaultApi* | [**update_catalog**](docs/DefaultApi.md#update_catalog) | **PUT** /catalogs/{name} | Update catalog *DefaultApi* | [**update_email_preferences**](docs/DefaultApi.md#update_email_preferences) | **PUT** /user/email-preferences | Update email preferences *DefaultApi* | [**update_environment**](docs/DefaultApi.md#update_environment) | **PUT** /environments/{name} | Update environment *DefaultApi* | [**update_my_team_invitation**](docs/DefaultApi.md#update_my_team_invitation) | **PUT** /team-invites | Update my team invitation +*DefaultApi* | [**update_organization**](docs/DefaultApi.md#update_organization) | **PUT** /organizations/{name} | Update organization *DefaultApi* | [**update_password_reset**](docs/DefaultApi.md#update_password_reset) | **POST** /accounts/password-reset/{code} | Update password reset *DefaultApi* | [**update_plan**](docs/DefaultApi.md#update_plan) | **PUT** /plan | Update plan -*DefaultApi* | [**update_schedule**](docs/DefaultApi.md#update_schedule) | **PUT** /schedules/{id} | Update schedule +*DefaultApi* | [**update_schedule**](docs/DefaultApi.md#update_schedule) | **PUT** /schedules/{idOrName} | Update schedule *DefaultApi* | [**update_secret**](docs/DefaultApi.md#update_secret) | **PUT** /secrets/{name} | Update secret *DefaultApi* | [**update_team**](docs/DefaultApi.md#update_team) | **PUT** /teams/{name} | Update team +*DefaultApi* | [**update_team_member**](docs/DefaultApi.md#update_team_member) | **PUT** /teams/{name}/members | Update team member *DefaultApi* | [**update_user**](docs/DefaultApi.md#update_user) | **PUT** /user | Update user profile +*DefaultApi* | [**update_webhook**](docs/DefaultApi.md#update_webhook) | **PUT** /webhooks/{name} | Update webhook *DefaultApi* | [**verify_email**](docs/DefaultApi.md#verify_email) | **POST** /user/verify | Verify email *FeatureFlagsApi* | [**get_feature_flag_value**](docs/FeatureFlagsApi.md#get_feature_flag_value) | **GET** /feature-flags/{key} | Get feature flag value @@ -127,6 +139,7 @@ Class | Method | HTTP request | Description - [AppStatistics](docs/AppStatistics.md) - [AppSummary](docs/AppSummary.md) - [AppVersion](docs/AppVersion.md) + - [AuthenticationContext](docs/AuthenticationContext.md) - [BatchScheduleParams](docs/BatchScheduleParams.md) - [BatchScheduleResponse](docs/BatchScheduleResponse.md) - [CancelRunResponse](docs/CancelRunResponse.md) @@ -160,6 +173,8 @@ Class | Method | HTTP request | Description - [CreateSessionResponse](docs/CreateSessionResponse.md) - [CreateTeamParams](docs/CreateTeamParams.md) - [CreateTeamResponse](docs/CreateTeamResponse.md) + - [CreateWebhookParams](docs/CreateWebhookParams.md) + - [CreateWebhookResponse](docs/CreateWebhookResponse.md) - [DeleteApiKeyParams](docs/DeleteApiKeyParams.md) - [DeleteApiKeyResponse](docs/DeleteApiKeyResponse.md) - [DeleteAppResponse](docs/DeleteAppResponse.md) @@ -169,23 +184,30 @@ Class | Method | HTTP request | Description - [DeleteScheduleParams](docs/DeleteScheduleParams.md) - [DeleteScheduleResponse](docs/DeleteScheduleResponse.md) - [DeleteSecretResponse](docs/DeleteSecretResponse.md) + - [DeleteSessionParams](docs/DeleteSessionParams.md) + - [DeleteSessionResponse](docs/DeleteSessionResponse.md) - [DeleteTeamInvitationParams](docs/DeleteTeamInvitationParams.md) - [DeleteTeamInvitationResponse](docs/DeleteTeamInvitationResponse.md) - [DeleteTeamParams](docs/DeleteTeamParams.md) - [DeleteTeamResponse](docs/DeleteTeamResponse.md) + - [DeleteWebhookResponse](docs/DeleteWebhookResponse.md) - [DeployAppRequest](docs/DeployAppRequest.md) - [DeployAppResponse](docs/DeployAppResponse.md) - [DescribeAccountBody](docs/DescribeAccountBody.md) - [DescribeAppResponse](docs/DescribeAppResponse.md) - [DescribeAppVersionResponse](docs/DescribeAppVersionResponse.md) + - [DescribeAuthenticationContextBody](docs/DescribeAuthenticationContextBody.md) - [DescribeDeviceLoginSessionResponse](docs/DescribeDeviceLoginSessionResponse.md) - [DescribeEmailPreferencesBody](docs/DescribeEmailPreferencesBody.md) + - [DescribePlanResponse](docs/DescribePlanResponse.md) - [DescribeRunGraphResponse](docs/DescribeRunGraphResponse.md) - [DescribeRunLinks](docs/DescribeRunLinks.md) - [DescribeRunLogsResponse](docs/DescribeRunLogsResponse.md) - [DescribeRunResponse](docs/DescribeRunResponse.md) - [DescribeSecretsKeyResponse](docs/DescribeSecretsKeyResponse.md) - [DescribeSessionResponse](docs/DescribeSessionResponse.md) + - [DescribeTeamResponse](docs/DescribeTeamResponse.md) + - [DescribeWebhookResponse](docs/DescribeWebhookResponse.md) - [EmailSubscriptions](docs/EmailSubscriptions.md) - [EncryptedCatalogProperty](docs/EncryptedCatalogProperty.md) - [Environment](docs/Environment.md) @@ -194,6 +216,7 @@ Class | Method | HTTP request | Description - [EventAlert](docs/EventAlert.md) - [EventError](docs/EventError.md) - [EventLog](docs/EventLog.md) + - [EventShouldertap](docs/EventShouldertap.md) - [EventWarning](docs/EventWarning.md) - [ExportCatalogsParams](docs/ExportCatalogsParams.md) - [ExportCatalogsResponse](docs/ExportCatalogsResponse.md) @@ -202,8 +225,8 @@ Class | Method | HTTP request | Description - [ExportedCatalog](docs/ExportedCatalog.md) - [ExportedCatalogProperty](docs/ExportedCatalogProperty.md) - [ExportedSecret](docs/ExportedSecret.md) + - [Feature](docs/Feature.md) - [FeaturebaseIdentity](docs/FeaturebaseIdentity.md) - - [Features](docs/Features.md) - [GenerateAppStatisticsResponse](docs/GenerateAppStatisticsResponse.md) - [GenerateAuthenticatorResponse](docs/GenerateAuthenticatorResponse.md) - [GenerateRunStatisticsResponse](docs/GenerateRunStatisticsResponse.md) @@ -212,7 +235,6 @@ Class | Method | HTTP request | Description - [InviteTeamMemberParams](docs/InviteTeamMemberParams.md) - [InviteTeamMemberResponse](docs/InviteTeamMemberResponse.md) - [LeaveTeamResponse](docs/LeaveTeamResponse.md) - - [ListAccountPlansResponse](docs/ListAccountPlansResponse.md) - [ListAlertsResponse](docs/ListAlertsResponse.md) - [ListApiKeysResponse](docs/ListApiKeysResponse.md) - [ListAppEnvironmentsResponse](docs/ListAppEnvironmentsResponse.md) @@ -230,6 +252,8 @@ Class | Method | HTTP request | Description - [ListTeamInvitationsResponse](docs/ListTeamInvitationsResponse.md) - [ListTeamMembersResponse](docs/ListTeamMembersResponse.md) - [ListTeamsResponse](docs/ListTeamsResponse.md) + - [ListWebhooksResponse](docs/ListWebhooksResponse.md) + - [Organization](docs/Organization.md) - [Pagination](docs/Pagination.md) - [Parameter](docs/Parameter.md) - [Plan](docs/Plan.md) @@ -247,23 +271,30 @@ Class | Method | HTTP request | Description - [RunGraphNode](docs/RunGraphNode.md) - [RunGraphRunId](docs/RunGraphRunId.md) - [RunInitiator](docs/RunInitiator.md) + - [RunInitiatorDetails](docs/RunInitiatorDetails.md) - [RunLogLine](docs/RunLogLine.md) - [RunParameter](docs/RunParameter.md) - [RunResults](docs/RunResults.md) + - [RunRunInitiatorDetails](docs/RunRunInitiatorDetails.md) - [RunStatistics](docs/RunStatistics.md) - [RunTimeseriesPoint](docs/RunTimeseriesPoint.md) - [Runner](docs/Runner.md) - [RunnerCredentials](docs/RunnerCredentials.md) - [Schedule](docs/Schedule.md) + - [ScheduleRunInitiatorDetails](docs/ScheduleRunInitiatorDetails.md) - [SearchRunsResponse](docs/SearchRunsResponse.md) - [Secret](docs/Secret.md) + - [ServerSentEventsInner](docs/ServerSentEventsInner.md) + - [ServerSentEventsInner1](docs/ServerSentEventsInner1.md) + - [ServerSentEventsInner2](docs/ServerSentEventsInner2.md) - [Session](docs/Session.md) + - [ShoulderTap](docs/ShoulderTap.md) - [SseWarning](docs/SseWarning.md) - [StatisticsSettings](docs/StatisticsSettings.md) - - [StreamAlerts200ResponseInner](docs/StreamAlerts200ResponseInner.md) - - [StreamRunLogs200ResponseInner](docs/StreamRunLogs200ResponseInner.md) - [Team](docs/Team.md) - [TeamInvitation](docs/TeamInvitation.md) + - [TeamMembership](docs/TeamMembership.md) + - [TestWebhookResponse](docs/TestWebhookResponse.md) - [Token](docs/Token.md) - [UnverifiedAuthenticator](docs/UnverifiedAuthenticator.md) - [UpdateAccountParams](docs/UpdateAccountParams.md) @@ -277,6 +308,8 @@ Class | Method | HTTP request | Description - [UpdateEnvironmentResponse](docs/UpdateEnvironmentResponse.md) - [UpdateMyTeamInvitationParams](docs/UpdateMyTeamInvitationParams.md) - [UpdateMyTeamInvitationResponse](docs/UpdateMyTeamInvitationResponse.md) + - [UpdateOrganizationParams](docs/UpdateOrganizationParams.md) + - [UpdateOrganizationResponse](docs/UpdateOrganizationResponse.md) - [UpdatePasswordResetParams](docs/UpdatePasswordResetParams.md) - [UpdatePasswordResetResponse](docs/UpdatePasswordResetResponse.md) - [UpdatePlanParams](docs/UpdatePlanParams.md) @@ -285,14 +318,19 @@ Class | Method | HTTP request | Description - [UpdateScheduleResponse](docs/UpdateScheduleResponse.md) - [UpdateSecretParams](docs/UpdateSecretParams.md) - [UpdateSecretResponse](docs/UpdateSecretResponse.md) + - [UpdateTeamMemberParams](docs/UpdateTeamMemberParams.md) + - [UpdateTeamMemberResponse](docs/UpdateTeamMemberResponse.md) - [UpdateTeamParams](docs/UpdateTeamParams.md) - [UpdateTeamResponse](docs/UpdateTeamResponse.md) - [UpdateUserParams](docs/UpdateUserParams.md) - [UpdateUserResponse](docs/UpdateUserResponse.md) + - [UpdateWebhookParams](docs/UpdateWebhookParams.md) + - [UpdateWebhookResponse](docs/UpdateWebhookResponse.md) - [User](docs/User.md) - [VerifiedAuthenticator](docs/VerifiedAuthenticator.md) - [VerifyEmailParams](docs/VerifyEmailParams.md) - [VerifyEmailResponse](docs/VerifyEmailResponse.md) + - [Webhook](docs/Webhook.md) To get access to the crate's generated documentation, use: diff --git a/crates/tower-api/src/apis/configuration.rs b/crates/tower-api/src/apis/configuration.rs index a38763e1..0897d1fe 100644 --- a/crates/tower-api/src/apis/configuration.rs +++ b/crates/tower-api/src/apis/configuration.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/apis/default_api.rs b/crates/tower-api/src/apis/default_api.rs index 3470fbfa..3110a644 100644 --- a/crates/tower-api/src/apis/default_api.rs +++ b/crates/tower-api/src/apis/default_api.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -36,6 +36,13 @@ pub struct CancelRunParams { pub seq: i64, } +/// struct for passing parameters to the method [`check_webhook`] +#[derive(Clone, Debug)] +pub struct CheckWebhookParams { + /// The name of the webhook. + pub name: String, +} + /// struct for passing parameters to the method [`claim_device_login_ticket`] #[derive(Clone, Debug)] pub struct ClaimDeviceLoginTicketParams { @@ -114,6 +121,12 @@ pub struct CreateTeamParams { pub create_team_params: models::CreateTeamParams, } +/// struct for passing parameters to the method [`create_webhook`] +#[derive(Clone, Debug)] +pub struct CreateWebhookParams { + pub create_webhook_params: models::CreateWebhookParams, +} + /// struct for passing parameters to the method [`deactivate_schedules`] #[derive(Clone, Debug)] pub struct DeactivateSchedulesParams { @@ -170,6 +183,12 @@ pub struct DeleteSecretParams { pub environment: Option, } +/// struct for passing parameters to the method [`delete_session`] +#[derive(Clone, Debug)] +pub struct DeleteSessionParams { + pub delete_session_params: Option, +} + /// struct for passing parameters to the method [`delete_team`] #[derive(Clone, Debug)] pub struct DeleteTeamParams { @@ -184,6 +203,13 @@ pub struct DeleteTeamInvitationParams { pub delete_team_invitation_params: models::DeleteTeamInvitationParams, } +/// struct for passing parameters to the method [`delete_webhook`] +#[derive(Clone, Debug)] +pub struct DeleteWebhookParams { + /// The name of the webhook. + pub name: String, +} + /// struct for passing parameters to the method [`deploy_app`] #[derive(Clone, Debug)] pub struct DeployAppParams { @@ -193,6 +219,8 @@ pub struct DeployAppParams { pub deploy_app_request: models::DeployAppRequest, /// The SHA256 hash of the content, used to verify integrity. pub x_tower_checksum_sha256: Option, + /// Size of the uploaded bundle in bytes. + pub content_length: Option, } /// struct for passing parameters to the method [`describe_account`] @@ -233,6 +261,15 @@ pub struct DescribeDeviceLoginSessionParams { pub device_code: String, } +/// struct for passing parameters to the method [`describe_plan`] +#[derive(Clone, Debug)] +pub struct DescribePlanParams { + /// The page number to fetch. + pub page: Option, + /// The number of records to fetch on each page. + pub page_size: Option, +} + /// struct for passing parameters to the method [`describe_run`] #[derive(Clone, Debug)] pub struct DescribeRunParams { @@ -269,6 +306,20 @@ pub struct DescribeSecretsKeyParams { pub format: Option, } +/// struct for passing parameters to the method [`describe_team`] +#[derive(Clone, Debug)] +pub struct DescribeTeamParams { + /// The name of the team to fetch. + pub name: String, +} + +/// struct for passing parameters to the method [`describe_webhook`] +#[derive(Clone, Debug)] +pub struct DescribeWebhookParams { + /// The name of the webhook. + pub name: String, +} + /// struct for passing parameters to the method [`export_catalogs`] #[derive(Clone, Debug)] pub struct ExportCatalogsParams { @@ -401,15 +452,6 @@ pub struct ListEnvironmentsParams { pub page_size: Option, } -/// struct for passing parameters to the method [`list_plans`] -#[derive(Clone, Debug)] -pub struct ListPlansParams { - /// The page number to fetch. - pub page: Option, - /// The number of records to fetch on each page. - pub page_size: Option, -} - /// struct for passing parameters to the method [`list_runners`] #[derive(Clone, Debug)] pub struct ListRunnersParams { @@ -485,6 +527,15 @@ pub struct ListTeamsParams { pub page_size: Option, } +/// struct for passing parameters to the method [`list_webhooks`] +#[derive(Clone, Debug)] +pub struct ListWebhooksParams { + /// The page number to fetch. + pub page: Option, + /// The number of records to fetch on each page. + pub page_size: Option, +} + /// struct for passing parameters to the method [`refresh_session`] #[derive(Clone, Debug)] pub struct RefreshSessionParams { @@ -585,6 +636,14 @@ pub struct UpdateMyTeamInvitationParams { pub update_my_team_invitation_params: models::UpdateMyTeamInvitationParams, } +/// struct for passing parameters to the method [`update_organization`] +#[derive(Clone, Debug)] +pub struct UpdateOrganizationParams { + /// The current name of the organization to update + pub name: String, + pub update_organization_params: models::UpdateOrganizationParams, +} + /// struct for passing parameters to the method [`update_password_reset`] #[derive(Clone, Debug)] pub struct UpdatePasswordResetParams { @@ -602,8 +661,8 @@ pub struct UpdatePlanParams { /// struct for passing parameters to the method [`update_schedule`] #[derive(Clone, Debug)] pub struct UpdateScheduleParams { - /// The ID of the schedule to update. - pub id: String, + /// The ID or name of the schedule to update. + pub id_or_name: String, pub update_schedule_params: models::UpdateScheduleParams, } @@ -622,12 +681,28 @@ pub struct UpdateTeamParams { pub update_team_params: models::UpdateTeamParams, } +/// struct for passing parameters to the method [`update_team_member`] +#[derive(Clone, Debug)] +pub struct UpdateTeamMemberParams { + /// The name of the team + pub name: String, + pub update_team_member_params: models::UpdateTeamMemberParams, +} + /// struct for passing parameters to the method [`update_user`] #[derive(Clone, Debug)] pub struct UpdateUserParams { pub update_user_params: models::UpdateUserParams, } +/// struct for passing parameters to the method [`update_webhook`] +#[derive(Clone, Debug)] +pub struct UpdateWebhookParams { + /// The name of the webhook. + pub name: String, + pub update_webhook_params: models::UpdateWebhookParams, +} + /// struct for passing parameters to the method [`verify_email`] #[derive(Clone, Debug)] pub struct VerifyEmailParams { @@ -666,6 +741,14 @@ pub enum CancelRunSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`check_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum CheckWebhookSuccess { + Status200(models::TestWebhookResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`claim_device_login_ticket`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -778,6 +861,14 @@ pub enum CreateTeamSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`create_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum CreateWebhookSuccess { + Status201(models::CreateWebhookResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`deactivate_schedules`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -842,6 +933,14 @@ pub enum DeleteSecretSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`delete_session`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DeleteSessionSuccess { + Status200(models::DeleteSessionResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`delete_team`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -858,6 +957,14 @@ pub enum DeleteTeamInvitationSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`delete_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DeleteWebhookSuccess { + Status200(models::DeleteWebhookResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`deploy_app`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -890,6 +997,14 @@ pub enum DescribeAppVersionSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`describe_authentication_context`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeAuthenticationContextSuccess { + Status200(models::DescribeAuthenticationContextBody), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`describe_device_login_session`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -906,6 +1021,14 @@ pub enum DescribeEmailPreferencesSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`describe_plan`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribePlanSuccess { + Status200(models::DescribePlanResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`describe_run`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -946,6 +1069,22 @@ pub enum DescribeSessionSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`describe_team`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeTeamSuccess { + Status200(models::DescribeTeamResponse), + UnknownValue(serde_json::Value), +} + +/// struct for typed successes of method [`describe_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeWebhookSuccess { + Status200(models::DescribeWebhookResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`export_catalogs`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1082,14 +1221,6 @@ pub enum ListMyTeamInvitationsSuccess { UnknownValue(serde_json::Value), } -/// struct for typed successes of method [`list_plans`] -#[derive(Debug, Clone, Serialize, Deserialize)] -#[serde(untagged)] -pub enum ListPlansSuccess { - Status200(models::ListAccountPlansResponse), - UnknownValue(serde_json::Value), -} - /// struct for typed successes of method [`list_runners`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1154,6 +1285,14 @@ pub enum ListTeamsSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`list_webhooks`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum ListWebhooksSuccess { + Status200(models::ListWebhooksResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`refresh_session`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1206,7 +1345,7 @@ pub enum SearchRunsSuccess { #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] pub enum StreamAlertsSuccess { - Status200(Vec), + Status200(Vec), UnknownValue(serde_json::Value), } @@ -1214,7 +1353,15 @@ pub enum StreamAlertsSuccess { #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] pub enum StreamRunLogsSuccess { - Status200(Vec), + Status200(Vec), + UnknownValue(serde_json::Value), +} + +/// struct for typed successes of method [`stream_shouldertaps`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum StreamShouldertapsSuccess { + Status200(Vec), UnknownValue(serde_json::Value), } @@ -1266,6 +1413,14 @@ pub enum UpdateMyTeamInvitationSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`update_organization`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateOrganizationSuccess { + Status200(models::UpdateOrganizationResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`update_password_reset`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1306,6 +1461,14 @@ pub enum UpdateTeamSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`update_team_member`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateTeamMemberSuccess { + Status200(models::UpdateTeamMemberResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`update_user`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1314,6 +1477,14 @@ pub enum UpdateUserSuccess { UnknownValue(serde_json::Value), } +/// struct for typed successes of method [`update_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateWebhookSuccess { + Status200(models::UpdateWebhookResponse), + UnknownValue(serde_json::Value), +} + /// struct for typed successes of method [`verify_email`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1354,6 +1525,14 @@ pub enum CancelRunError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`check_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum CheckWebhookError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`claim_device_login_ticket`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1469,6 +1648,14 @@ pub enum CreateTeamError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`create_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum CreateWebhookError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`deactivate_schedules`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1533,6 +1720,14 @@ pub enum DeleteSecretError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`delete_session`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DeleteSessionError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`delete_team`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1549,6 +1744,14 @@ pub enum DeleteTeamInvitationError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`delete_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DeleteWebhookError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`deploy_app`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1583,6 +1786,14 @@ pub enum DescribeAppVersionError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`describe_authentication_context`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeAuthenticationContextError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`describe_device_login_session`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1599,6 +1810,14 @@ pub enum DescribeEmailPreferencesError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`describe_plan`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribePlanError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`describe_run`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1641,6 +1860,22 @@ pub enum DescribeSessionError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`describe_team`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeTeamError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + +/// struct for typed errors of method [`describe_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum DescribeWebhookError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`export_catalogs`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1777,14 +2012,6 @@ pub enum ListMyTeamInvitationsError { UnknownValue(serde_json::Value), } -/// struct for typed errors of method [`list_plans`] -#[derive(Debug, Clone, Serialize, Deserialize)] -#[serde(untagged)] -pub enum ListPlansError { - DefaultResponse(models::ErrorModel), - UnknownValue(serde_json::Value), -} - /// struct for typed errors of method [`list_runners`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1849,6 +2076,14 @@ pub enum ListTeamsError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`list_webhooks`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum ListWebhooksError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`refresh_session`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1913,6 +2148,14 @@ pub enum StreamRunLogsError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`stream_shouldertaps`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum StreamShouldertapsError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`update_account`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -1957,6 +2200,16 @@ pub enum UpdateEnvironmentError { #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] pub enum UpdateMyTeamInvitationError { + Status404(models::ErrorModel), + Status422(models::ErrorModel), + Status500(models::ErrorModel), + UnknownValue(serde_json::Value), +} + +/// struct for typed errors of method [`update_organization`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateOrganizationError { DefaultResponse(models::ErrorModel), UnknownValue(serde_json::Value), } @@ -2001,6 +2254,14 @@ pub enum UpdateTeamError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`update_team_member`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateTeamMemberError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`update_user`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -2009,6 +2270,14 @@ pub enum UpdateUserError { UnknownValue(serde_json::Value), } +/// struct for typed errors of method [`update_webhook`] +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum UpdateWebhookError { + DefaultResponse(models::ErrorModel), + UnknownValue(serde_json::Value), +} + /// struct for typed errors of method [`verify_email`] #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(untagged)] @@ -2037,6 +2306,14 @@ pub async fn acknowledge_alert( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -2085,6 +2362,14 @@ pub async fn acknowledge_all_alerts( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -2134,6 +2419,14 @@ pub async fn activate_schedules( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.batch_schedule_params); let req = req_builder.build()?; @@ -2189,6 +2482,14 @@ pub async fn cancel_run( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -2222,12 +2523,15 @@ pub async fn cancel_run( } } -/// Claims a device login ticket code for the authenticated user. -pub async fn claim_device_login_ticket( +pub async fn check_webhook( configuration: &configuration::Configuration, - params: ClaimDeviceLoginTicketParams, -) -> Result, Error> { - let uri_str = format!("{}/login/device/claim", configuration.base_path); + params: CheckWebhookParams, +) -> Result, Error> { + let uri_str = format!( + "{}/webhooks/{name}/test", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); let mut req_builder = configuration .client .request(reqwest::Method::POST, &uri_str); @@ -2238,10 +2542,75 @@ pub async fn claim_device_login_ticket( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; - req_builder = req_builder.json(¶ms.claim_device_login_ticket_params); - - let req = req_builder.build()?; - let resp = configuration.client.execute(req).await?; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// Claims a device login ticket code for the authenticated user. +pub async fn claim_device_login_ticket( + configuration: &configuration::Configuration, + params: ClaimDeviceLoginTicketParams, +) -> Result, Error> { + let uri_str = format!("{}/login/device/claim", configuration.base_path); + let mut req_builder = configuration + .client + .request(reqwest::Method::POST, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.claim_device_login_ticket_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; let status = resp.status(); @@ -2334,6 +2703,14 @@ pub async fn create_api_key( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_api_key_params); let req = req_builder.build()?; @@ -2384,6 +2761,14 @@ pub async fn create_app( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_app_params); let req = req_builder.build()?; @@ -2434,6 +2819,14 @@ pub async fn create_authenticator( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_authenticator_params); let req = req_builder.build()?; @@ -2484,6 +2877,14 @@ pub async fn create_catalog( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_catalog_params); let req = req_builder.build()?; @@ -2577,6 +2978,14 @@ pub async fn create_environment( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_environment_params); let req = req_builder.build()?; @@ -2674,6 +3083,14 @@ pub async fn create_sandbox_secrets( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_sandbox_secrets_params); let req = req_builder.build()?; @@ -2724,6 +3141,14 @@ pub async fn create_schedule( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_schedule_params); let req = req_builder.build()?; @@ -2774,6 +3199,14 @@ pub async fn create_secret( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_secret_params); let req = req_builder.build()?; @@ -2871,6 +3304,14 @@ pub async fn create_team( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.create_team_params); let req = req_builder.build()?; @@ -2905,6 +3346,63 @@ pub async fn create_team( } } +pub async fn create_webhook( + configuration: &configuration::Configuration, + params: CreateWebhookParams, +) -> Result, Error> { + let uri_str = format!("{}/webhooks", configuration.base_path); + let mut req_builder = configuration + .client + .request(reqwest::Method::POST, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.create_webhook_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Deactivate multiple schedules to disable their execution. pub async fn deactivate_schedules( configuration: &configuration::Configuration, @@ -2921,6 +3419,14 @@ pub async fn deactivate_schedules( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.batch_schedule_params); let req = req_builder.build()?; @@ -2975,6 +3481,14 @@ pub async fn delete_alert( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3023,6 +3537,14 @@ pub async fn delete_api_key( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.delete_api_key_params); let req = req_builder.build()?; @@ -3077,6 +3599,14 @@ pub async fn delete_app( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3126,6 +3656,14 @@ pub async fn delete_authenticator( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.delete_authenticator_params); let req = req_builder.build()?; @@ -3183,6 +3721,14 @@ pub async fn delete_catalog( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3232,6 +3778,14 @@ pub async fn delete_schedule( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.delete_schedule_params); let req = req_builder.build()?; @@ -3289,6 +3843,14 @@ pub async fn delete_secret( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3322,10 +3884,68 @@ pub async fn delete_secret( } } -/// Delete a new team -pub async fn delete_team( +/// Terminate a session and revoke the access keys associated with it. +pub async fn delete_session( configuration: &configuration::Configuration, - params: DeleteTeamParams, + params: DeleteSessionParams, +) -> Result, Error> { + let uri_str = format!("{}/session", configuration.base_path); + let mut req_builder = configuration + .client + .request(reqwest::Method::DELETE, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.delete_session_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// Delete a new team +pub async fn delete_team( + configuration: &configuration::Configuration, + params: DeleteTeamParams, ) -> Result, Error> { let uri_str = format!("{}/teams", configuration.base_path); let mut req_builder = configuration @@ -3338,6 +3958,14 @@ pub async fn delete_team( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.delete_team_params); let req = req_builder.build()?; @@ -3392,6 +4020,14 @@ pub async fn delete_team_invitation( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.delete_team_invitation_params); let req = req_builder.build()?; @@ -3426,6 +4062,66 @@ pub async fn delete_team_invitation( } } +pub async fn delete_webhook( + configuration: &configuration::Configuration, + params: DeleteWebhookParams, +) -> Result, Error> { + let uri_str = format!( + "{}/webhooks/{name}", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); + let mut req_builder = configuration + .client + .request(reqwest::Method::DELETE, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Deploy a new version of an app. Accepts either a TAR file upload (application/tar) or a JSON body with source_uri (application/json) for deploying from a GitHub repository. pub async fn deploy_app( configuration: &configuration::Configuration, @@ -3446,9 +4142,20 @@ pub async fn deploy_app( if let Some(param_value) = params.x_tower_checksum_sha256 { req_builder = req_builder.header("X-Tower-Checksum-SHA256", param_value.to_string()); } + if let Some(param_value) = params.content_length { + req_builder = req_builder.header("Content-Length", param_value.to_string()); + } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.deploy_app_request); let req = req_builder.build()?; @@ -3501,6 +4208,14 @@ pub async fn describe_account( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3564,6 +4279,14 @@ pub async fn describe_app( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3616,6 +4339,14 @@ pub async fn describe_app_version( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3649,6 +4380,65 @@ pub async fn describe_app_version( } } +/// This API endpoint returns information about the current authentication context for the user that's used for various internal processes in Tower UI. +pub async fn describe_authentication_context( + configuration: &configuration::Configuration, +) -> Result< + ResponseContent, + Error, +> { + let uri_str = format!("{}/user/auth-context", configuration.base_path); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = + serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = + serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Checks if a device login code has been claimed and returns the user session if so. pub async fn describe_device_login_session( configuration: &configuration::Configuration, @@ -3714,6 +4504,14 @@ pub async fn describe_email_preferences( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3747,6 +4545,67 @@ pub async fn describe_email_preferences( } } +/// Get the current plan for the account. +pub async fn describe_plan( + configuration: &configuration::Configuration, + params: DescribePlanParams, +) -> Result, Error> { + let uri_str = format!("{}/plan", configuration.base_path); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref param_value) = params.page { + req_builder = req_builder.query(&[("page", ¶m_value.to_string())]); + } + if let Some(ref param_value) = params.page_size { + req_builder = req_builder.query(&[("page_size", ¶m_value.to_string())]); + } + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Describe a run of an app. pub async fn describe_run( configuration: &configuration::Configuration, @@ -3810,22 +4669,151 @@ pub async fn describe_run( /// Describe the graph that a run belongs to. pub async fn describe_run_graph( configuration: &configuration::Configuration, - params: DescribeRunGraphParams, -) -> Result, Error> { - let uri_str = format!( - "{}/apps/{name}/runs/{seq}/graph", - configuration.base_path, - name = crate::apis::urlencode(params.name), - seq = params.seq - ); + params: DescribeRunGraphParams, +) -> Result, Error> { + let uri_str = format!( + "{}/apps/{name}/runs/{seq}/graph", + configuration.base_path, + name = crate::apis::urlencode(params.name), + seq = params.seq + ); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// Retrieves the logs associated with a particular run of an app. +pub async fn describe_run_logs( + configuration: &configuration::Configuration, + params: DescribeRunLogsParams, +) -> Result, Error> { + let uri_str = format!( + "{}/apps/{name}/runs/{seq}/logs", + configuration.base_path, + name = crate::apis::urlencode(params.name), + seq = params.seq + ); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref param_value) = params.start_at { + req_builder = req_builder.query(&[("start_at", ¶m_value.to_string())]); + } + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// Gets the encryption key used for encrypting secrets that you want to create in Tower. +pub async fn describe_secrets_key( + configuration: &configuration::Configuration, + params: DescribeSecretsKeyParams, +) -> Result, Error> { + let uri_str = format!("{}/secrets/key", configuration.base_path); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + if let Some(ref param_value) = params.format { + req_builder = req_builder.query(&[("format", ¶m_value.to_string())]); + } if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3840,7 +4828,7 @@ pub async fn describe_run_graph( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -3849,7 +4837,7 @@ pub async fn describe_run_graph( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -3859,28 +4847,27 @@ pub async fn describe_run_graph( } } -/// Retrieves the logs associated with a particular run of an app. -pub async fn describe_run_logs( +/// Validate your current session and return the user information associated with the session. +pub async fn describe_session( configuration: &configuration::Configuration, - params: DescribeRunLogsParams, -) -> Result, Error> { - let uri_str = format!( - "{}/apps/{name}/runs/{seq}/logs", - configuration.base_path, - name = crate::apis::urlencode(params.name), - seq = params.seq - ); +) -> Result, Error> { + let uri_str = format!("{}/session", configuration.base_path); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); - if let Some(ref param_value) = params.start_at { - req_builder = req_builder.query(&[("start_at", ¶m_value.to_string())]); - } if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3895,7 +4882,7 @@ pub async fn describe_run_logs( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -3904,7 +4891,7 @@ pub async fn describe_run_logs( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -3914,23 +4901,32 @@ pub async fn describe_run_logs( } } -/// Gets the encryption key used for encrypting secrets that you want to create in Tower. -pub async fn describe_secrets_key( +/// Get details about a team, including its members and invitations. +pub async fn describe_team( configuration: &configuration::Configuration, - params: DescribeSecretsKeyParams, -) -> Result, Error> { - let uri_str = format!("{}/secrets/key", configuration.base_path); + params: DescribeTeamParams, +) -> Result, Error> { + let uri_str = format!( + "{}/teams/{name}", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); - if let Some(ref param_value) = params.format { - req_builder = req_builder.query(&[("format", ¶m_value.to_string())]); - } if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3945,7 +4941,7 @@ pub async fn describe_secrets_key( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -3954,7 +4950,7 @@ pub async fn describe_secrets_key( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -3964,11 +4960,15 @@ pub async fn describe_secrets_key( } } -/// Validate your current session and return the user information associated with the session. -pub async fn describe_session( +pub async fn describe_webhook( configuration: &configuration::Configuration, -) -> Result, Error> { - let uri_str = format!("{}/session", configuration.base_path); + params: DescribeWebhookParams, +) -> Result, Error> { + let uri_str = format!( + "{}/webhooks/{name}", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); if let Some(ref user_agent) = configuration.user_agent { @@ -3977,6 +4977,14 @@ pub async fn describe_session( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -3991,7 +4999,7 @@ pub async fn describe_session( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -4000,7 +5008,7 @@ pub async fn describe_session( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -4026,6 +5034,14 @@ pub async fn export_catalogs( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.export_catalogs_params); let req = req_builder.build()?; @@ -4076,6 +5092,14 @@ pub async fn export_secrets( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.export_secrets_params); let req = req_builder.build()?; @@ -4127,6 +5151,14 @@ pub async fn generate_app_statistics( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4175,6 +5207,14 @@ pub async fn generate_authenticator( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4249,6 +5289,14 @@ pub async fn generate_run_statistics( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4359,6 +5407,14 @@ pub async fn invite_team_member( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.invite_team_member_params); let req = req_builder.build()?; @@ -4413,6 +5469,14 @@ pub async fn leave_team( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4481,6 +5545,14 @@ pub async fn list_alerts( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4534,6 +5606,14 @@ pub async fn list_api_keys( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4585,6 +5665,14 @@ pub async fn list_app_environments( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4636,6 +5724,14 @@ pub async fn list_app_versions( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4758,6 +5854,14 @@ pub async fn list_authenticators( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4817,6 +5921,14 @@ pub async fn list_catalogs( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4853,69 +5965,31 @@ pub async fn list_catalogs( /// List all environments in your account. pub async fn list_environments( configuration: &configuration::Configuration, - params: ListEnvironmentsParams, -) -> Result, Error> { - let uri_str = format!("{}/environments", configuration.base_path); - let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); - - if let Some(ref param_value) = params.page { - req_builder = req_builder.query(&[("page", ¶m_value.to_string())]); - } - if let Some(ref param_value) = params.page_size { - req_builder = req_builder.query(&[("page_size", ¶m_value.to_string())]); - } - if let Some(ref user_agent) = configuration.user_agent { - req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); - } - if let Some(ref token) = configuration.bearer_access_token { - req_builder = req_builder.bearer_auth(token.to_owned()); - }; - - let req = req_builder.build()?; - let resp = configuration.client.execute(req).await?; - - let status = resp.status(); - - let tower_trace_id = resp - .headers() - .get("x-tower-trace-id") - .and_then(|v| v.to_str().ok()) - .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); - - if !status.is_client_error() && !status.is_server_error() { - let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); - Ok(ResponseContent { - tower_trace_id, - status, - content, - entity, - }) - } else { - let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); - Err(Error::ResponseError(ResponseContent { - tower_trace_id, - status, - content, - entity, - })) - } -} - -/// List your pending invitations for teams -pub async fn list_my_team_invitations( - configuration: &configuration::Configuration, -) -> Result, Error> { - let uri_str = format!("{}/team-invites", configuration.base_path); + params: ListEnvironmentsParams, +) -> Result, Error> { + let uri_str = format!("{}/environments", configuration.base_path); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + if let Some(ref param_value) = params.page { + req_builder = req_builder.query(&[("page", ¶m_value.to_string())]); + } + if let Some(ref param_value) = params.page_size { + req_builder = req_builder.query(&[("page_size", ¶m_value.to_string())]); + } if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4930,7 +6004,7 @@ pub async fn list_my_team_invitations( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -4939,7 +6013,7 @@ pub async fn list_my_team_invitations( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -4949,26 +6023,27 @@ pub async fn list_my_team_invitations( } } -/// List active and past account plans for the current account. -pub async fn list_plans( +/// List your pending invitations for teams +pub async fn list_my_team_invitations( configuration: &configuration::Configuration, - params: ListPlansParams, -) -> Result, Error> { - let uri_str = format!("{}/plans", configuration.base_path); +) -> Result, Error> { + let uri_str = format!("{}/team-invites", configuration.base_path); let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); - if let Some(ref param_value) = params.page { - req_builder = req_builder.query(&[("page", ¶m_value.to_string())]); - } - if let Some(ref param_value) = params.page_size { - req_builder = req_builder.query(&[("page_size", ¶m_value.to_string())]); - } if let Some(ref user_agent) = configuration.user_agent { req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); } if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -4983,7 +6058,7 @@ pub async fn list_plans( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -4992,7 +6067,7 @@ pub async fn list_plans( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -5115,6 +6190,14 @@ pub async fn list_runs( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5171,6 +6254,14 @@ pub async fn list_schedules( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5217,6 +6308,14 @@ pub async fn list_secret_environments( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5276,6 +6375,14 @@ pub async fn list_secrets( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5327,6 +6434,14 @@ pub async fn list_team_invitations( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5378,6 +6493,14 @@ pub async fn list_team_members( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5431,6 +6554,14 @@ pub async fn list_teams( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5464,7 +6595,67 @@ pub async fn list_teams( } } -/// Returns a new session based on the supplied authentication context. This is helpful when clients want to use POST instead of GET to check session information. +pub async fn list_webhooks( + configuration: &configuration::Configuration, + params: ListWebhooksParams, +) -> Result, Error> { + let uri_str = format!("{}/webhooks", configuration.base_path); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref param_value) = params.page { + req_builder = req_builder.query(&[("page", ¶m_value.to_string())]); + } + if let Some(ref param_value) = params.page_size { + req_builder = req_builder.query(&[("page_size", ¶m_value.to_string())]); + } + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// If your access tokens expire, this API endpoint takes a Refresh Token and returns a new set of Access Tokens for your session. Note that we don't rotate the Refresh Token itself, and it's not returned by this API endpoint. pub async fn refresh_session( configuration: &configuration::Configuration, params: RefreshSessionParams, @@ -5480,6 +6671,14 @@ pub async fn refresh_session( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.refresh_session_params); let req = req_builder.build()?; @@ -5514,7 +6713,6 @@ pub async fn refresh_session( } } -/// Remove a new team pub async fn remove_team_member( configuration: &configuration::Configuration, params: RemoveTeamMemberParams, @@ -5534,6 +6732,14 @@ pub async fn remove_team_member( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.remove_team_member_params); let req = req_builder.build()?; @@ -5583,6 +6789,14 @@ pub async fn resend_email_verification( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5636,6 +6850,14 @@ pub async fn resend_team_invitation( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.resend_team_invitation_params); let req = req_builder.build()?; @@ -5780,6 +7002,14 @@ pub async fn search_runs( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5826,6 +7056,14 @@ pub async fn stream_alerts( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5878,6 +7116,68 @@ pub async fn stream_run_logs( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + +/// Stream events over SSE that notify you of potential data staleness +pub async fn stream_shouldertaps( + configuration: &configuration::Configuration, +) -> Result, Error> { + let uri_str = format!("{}/shouldertaps/stream", configuration.base_path); + let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; let req = req_builder.build()?; let resp = configuration.client.execute(req).await?; @@ -5892,7 +7192,7 @@ pub async fn stream_run_logs( if !status.is_client_error() && !status.is_server_error() { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Ok(ResponseContent { tower_trace_id, status, @@ -5901,7 +7201,7 @@ pub async fn stream_run_logs( }) } else { let content = resp.text().await?; - let entity: Option = serde_json::from_str(&content).ok(); + let entity: Option = serde_json::from_str(&content).ok(); Err(Error::ResponseError(ResponseContent { tower_trace_id, status, @@ -5929,6 +7229,14 @@ pub async fn update_account( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_account_params); let req = req_builder.build()?; @@ -5981,6 +7289,14 @@ pub async fn update_app( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_app_params); let req = req_builder.build()?; @@ -6033,6 +7349,14 @@ pub async fn update_catalog( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_catalog_params); let req = req_builder.build()?; @@ -6081,6 +7405,14 @@ pub async fn update_email_preferences( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_email_preferences_body); let req = req_builder.build()?; @@ -6133,6 +7465,14 @@ pub async fn update_environment( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_environment_params); let req = req_builder.build()?; @@ -6181,6 +7521,14 @@ pub async fn update_my_team_invitation( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_my_team_invitation_params); let req = req_builder.build()?; @@ -6215,6 +7563,66 @@ pub async fn update_my_team_invitation( } } +/// Update an organization's name. Only the current owner can perform this operation. +pub async fn update_organization( + configuration: &configuration::Configuration, + params: UpdateOrganizationParams, +) -> Result, Error> { + let uri_str = format!( + "{}/organizations/{name}", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); + let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.update_organization_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Updates the password reset code with the new password pub async fn update_password_reset( configuration: &configuration::Configuration, @@ -6279,6 +7687,14 @@ pub async fn update_plan( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_plan_params); let req = req_builder.build()?; @@ -6319,9 +7735,9 @@ pub async fn update_schedule( params: UpdateScheduleParams, ) -> Result, Error> { let uri_str = format!( - "{}/schedules/{id}", + "{}/schedules/{idOrName}", configuration.base_path, - id = crate::apis::urlencode(params.id) + idOrName = crate::apis::urlencode(params.id_or_name) ); let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str); @@ -6331,6 +7747,14 @@ pub async fn update_schedule( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_schedule_params); let req = req_builder.build()?; @@ -6383,6 +7807,14 @@ pub async fn update_secret( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_secret_params); let req = req_builder.build()?; @@ -6435,6 +7867,14 @@ pub async fn update_team( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_team_params); let req = req_builder.build()?; @@ -6469,6 +7909,65 @@ pub async fn update_team( } } +pub async fn update_team_member( + configuration: &configuration::Configuration, + params: UpdateTeamMemberParams, +) -> Result, Error> { + let uri_str = format!( + "{}/teams/{name}/members", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); + let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.update_team_member_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// Updates your current user profile. pub async fn update_user( configuration: &configuration::Configuration, @@ -6483,6 +7982,14 @@ pub async fn update_user( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.update_user_params); let req = req_builder.build()?; @@ -6517,6 +8024,66 @@ pub async fn update_user( } } +/// Updates webhook. Note: it is not possible to update the URL. To do so, you should delete and recreate the webhook instead. +pub async fn update_webhook( + configuration: &configuration::Configuration, + params: UpdateWebhookParams, +) -> Result, Error> { + let uri_str = format!( + "{}/webhooks/{name}", + configuration.base_path, + name = crate::apis::urlencode(params.name) + ); + let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + if let Some(ref token) = configuration.bearer_access_token { + req_builder = req_builder.bearer_auth(token.to_owned()); + }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; + req_builder = req_builder.json(¶ms.update_webhook_params); + + let req = req_builder.build()?; + let resp = configuration.client.execute(req).await?; + + let status = resp.status(); + + let tower_trace_id = resp + .headers() + .get("x-tower-trace-id") + .and_then(|v| v.to_str().ok()) + .map_or(String::from(DEFAULT_TOWER_TRACE_ID), String::from); + + if !status.is_client_error() && !status.is_server_error() { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Ok(ResponseContent { + tower_trace_id, + status, + content, + entity, + }) + } else { + let content = resp.text().await?; + let entity: Option = serde_json::from_str(&content).ok(); + Err(Error::ResponseError(ResponseContent { + tower_trace_id, + status, + content, + entity, + })) + } +} + /// If the user hasn't verified their email address, this API endpoint allows them to send a confirmation token they received via email to indeed verify they can receive emails. pub async fn verify_email( configuration: &configuration::Configuration, @@ -6533,6 +8100,14 @@ pub async fn verify_email( if let Some(ref token) = configuration.bearer_access_token { req_builder = req_builder.bearer_auth(token.to_owned()); }; + if let Some(ref apikey) = configuration.api_key { + let key = apikey.key.clone(); + let value = match apikey.prefix { + Some(ref prefix) => format!("{} {}", prefix, key), + None => key, + }; + req_builder = req_builder.header("X-API-Key", value); + }; req_builder = req_builder.json(¶ms.verify_email_params); let req = req_builder.build()?; diff --git a/crates/tower-api/src/apis/feature_flags_api.rs b/crates/tower-api/src/apis/feature_flags_api.rs index 00a7e9e7..19e274a6 100644 --- a/crates/tower-api/src/apis/feature_flags_api.rs +++ b/crates/tower-api/src/apis/feature_flags_api.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/account.rs b/crates/tower-api/src/models/account.rs index 06906b88..cf559f4a 100644 --- a/crates/tower-api/src/models/account.rs +++ b/crates/tower-api/src/models/account.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -20,7 +20,7 @@ pub struct Account { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "name")] pub name: String, - /// This property is deprecated. Please use name instead. + /// This property is deprecated. Use name instead. #[serde(rename = "slug", skip_serializing_if = "Option::is_none")] pub slug: Option, } diff --git a/crates/tower-api/src/models/acknowledge_alert_response.rs b/crates/tower-api/src/models/acknowledge_alert_response.rs index e70a02ed..c09af3d1 100644 --- a/crates/tower-api/src/models/acknowledge_alert_response.rs +++ b/crates/tower-api/src/models/acknowledge_alert_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/acknowledge_all_alerts_response.rs b/crates/tower-api/src/models/acknowledge_all_alerts_response.rs index 2b52ac25..03ad0d97 100644 --- a/crates/tower-api/src/models/acknowledge_all_alerts_response.rs +++ b/crates/tower-api/src/models/acknowledge_all_alerts_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/alert.rs b/crates/tower-api/src/models/alert.rs index 8c964a11..c0f324df 100644 --- a/crates/tower-api/src/models/alert.rs +++ b/crates/tower-api/src/models/alert.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -27,9 +27,6 @@ pub struct Alert { #[serde(rename = "detail")] pub detail: models::RunFailureAlert, #[serde_as(as = "DefaultOnNull")] - #[serde(rename = "environment")] - pub environment: String, - #[serde_as(as = "DefaultOnNull")] #[serde(rename = "seq")] pub seq: i64, #[serde_as(as = "DefaultOnNull")] @@ -43,7 +40,6 @@ impl Alert { alert_type: String, created_at: String, detail: models::RunFailureAlert, - environment: String, seq: i64, status: String, ) -> Alert { @@ -52,7 +48,6 @@ impl Alert { alert_type, created_at, detail, - environment, seq, status, } diff --git a/crates/tower-api/src/models/api_key.rs b/crates/tower-api/src/models/api_key.rs index cdc91380..296bb0b0 100644 --- a/crates/tower-api/src/models/api_key.rs +++ b/crates/tower-api/src/models/api_key.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/app.rs b/crates/tower-api/src/models/app.rs index fbae834e..ce3f61cb 100644 --- a/crates/tower-api/src/models/app.rs +++ b/crates/tower-api/src/models/app.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -39,9 +39,17 @@ pub struct App { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "owner")] pub owner: String, + /// The maximum time in seconds that a run can stay in the pending state before being marked as cancelled. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "pending_timeout")] + pub pending_timeout: i64, /// The stats of all the runs of this app. #[serde(rename = "run_results", skip_serializing_if = "Option::is_none")] pub run_results: Option, + /// The number of seconds that a run can stay running before it gets cancelled. Value of 0 (default) means no timeout. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "running_timeout")] + pub running_timeout: i64, /// The schedule associated with this app, null if none. #[serde(rename = "schedule", deserialize_with = "Option::deserialize")] pub schedule: Option, @@ -49,7 +57,7 @@ pub struct App { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "short_description")] pub short_description: String, - /// This property is deprecated. Please use name instead. + /// This property is deprecated. Use name instead. #[serde(rename = "slug", skip_serializing_if = "Option::is_none")] pub slug: Option, /// The status of the app. @@ -71,6 +79,8 @@ impl App { name: String, next_run_at: Option, owner: String, + pending_timeout: i64, + running_timeout: i64, schedule: Option, short_description: String, version: Option, @@ -83,7 +93,9 @@ impl App { name, next_run_at, owner, + pending_timeout, run_results: None, + running_timeout, schedule, short_description, slug: None, diff --git a/crates/tower-api/src/models/app_statistics.rs b/crates/tower-api/src/models/app_statistics.rs index b4f3f131..bdee61e7 100644 --- a/crates/tower-api/src/models/app_statistics.rs +++ b/crates/tower-api/src/models/app_statistics.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/app_summary.rs b/crates/tower-api/src/models/app_summary.rs index ec6a41d8..e6a7ba70 100644 --- a/crates/tower-api/src/models/app_summary.rs +++ b/crates/tower-api/src/models/app_summary.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/app_version.rs b/crates/tower-api/src/models/app_version.rs index 211356b7..d68f0720 100644 --- a/crates/tower-api/src/models/app_version.rs +++ b/crates/tower-api/src/models/app_version.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/authentication_context.rs b/crates/tower-api/src/models/authentication_context.rs new file mode 100644 index 00000000..3485683e --- /dev/null +++ b/crates/tower-api/src/models/authentication_context.rs @@ -0,0 +1,29 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct AuthenticationContext { + /// The WorkOS access token for SSO authentication. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "work_os_access_token")] + pub work_os_access_token: String, +} + +impl AuthenticationContext { + pub fn new(work_os_access_token: String) -> AuthenticationContext { + AuthenticationContext { + work_os_access_token, + } + } +} diff --git a/crates/tower-api/src/models/batch_schedule_params.rs b/crates/tower-api/src/models/batch_schedule_params.rs index 1c99c445..add24560 100644 --- a/crates/tower-api/src/models/batch_schedule_params.rs +++ b/crates/tower-api/src/models/batch_schedule_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/batch_schedule_response.rs b/crates/tower-api/src/models/batch_schedule_response.rs index 571c36aa..68b7734c 100644 --- a/crates/tower-api/src/models/batch_schedule_response.rs +++ b/crates/tower-api/src/models/batch_schedule_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/cancel_run_response.rs b/crates/tower-api/src/models/cancel_run_response.rs index 5e475afb..65de24c0 100644 --- a/crates/tower-api/src/models/cancel_run_response.rs +++ b/crates/tower-api/src/models/cancel_run_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/catalog.rs b/crates/tower-api/src/models/catalog.rs index e090ec17..e19b6326 100644 --- a/crates/tower-api/src/models/catalog.rs +++ b/crates/tower-api/src/models/catalog.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -26,7 +26,7 @@ pub struct Catalog { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "properties")] pub properties: Vec, - /// This property is deprecated. Please use name instead. + /// This property is deprecated. Use name instead. #[serde(rename = "slug", skip_serializing_if = "Option::is_none")] pub slug: Option, #[serde_as(as = "DefaultOnNull")] diff --git a/crates/tower-api/src/models/catalog_property.rs b/crates/tower-api/src/models/catalog_property.rs index cb4d6b47..14a78c95 100644 --- a/crates/tower-api/src/models/catalog_property.rs +++ b/crates/tower-api/src/models/catalog_property.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/claim_device_login_ticket_params.rs b/crates/tower-api/src/models/claim_device_login_ticket_params.rs index a6cd4d4e..008b80be 100644 --- a/crates/tower-api/src/models/claim_device_login_ticket_params.rs +++ b/crates/tower-api/src/models/claim_device_login_ticket_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -17,6 +17,10 @@ pub struct ClaimDeviceLoginTicketParams { /// A URL to the JSON Schema for this object. #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] pub schema: Option, + /// The refresh token for the session to delegate to the device. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "refresh_token")] + pub refresh_token: String, /// The user code to claim. #[serde_as(as = "DefaultOnNull")] #[serde(rename = "user_code")] @@ -24,9 +28,10 @@ pub struct ClaimDeviceLoginTicketParams { } impl ClaimDeviceLoginTicketParams { - pub fn new(user_code: String) -> ClaimDeviceLoginTicketParams { + pub fn new(refresh_token: String, user_code: String) -> ClaimDeviceLoginTicketParams { ClaimDeviceLoginTicketParams { schema: None, + refresh_token, user_code, } } diff --git a/crates/tower-api/src/models/claim_device_login_ticket_response.rs b/crates/tower-api/src/models/claim_device_login_ticket_response.rs index 50ebc2e4..9bf6ecd1 100644 --- a/crates/tower-api/src/models/claim_device_login_ticket_response.rs +++ b/crates/tower-api/src/models/claim_device_login_ticket_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_account_params.rs b/crates/tower-api/src/models/create_account_params.rs index 94b59a10..d41b4011 100644 --- a/crates/tower-api/src/models/create_account_params.rs +++ b/crates/tower-api/src/models/create_account_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_account_params_flags_struct.rs b/crates/tower-api/src/models/create_account_params_flags_struct.rs index 7d57ef99..5e1a98ec 100644 --- a/crates/tower-api/src/models/create_account_params_flags_struct.rs +++ b/crates/tower-api/src/models/create_account_params_flags_struct.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_account_response.rs b/crates/tower-api/src/models/create_account_response.rs index f417802d..b287529d 100644 --- a/crates/tower-api/src/models/create_account_response.rs +++ b/crates/tower-api/src/models/create_account_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_api_key_params.rs b/crates/tower-api/src/models/create_api_key_params.rs index 4d01b92f..0f822c77 100644 --- a/crates/tower-api/src/models/create_api_key_params.rs +++ b/crates/tower-api/src/models/create_api_key_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_api_key_response.rs b/crates/tower-api/src/models/create_api_key_response.rs index 03865477..b08d1e0c 100644 --- a/crates/tower-api/src/models/create_api_key_response.rs +++ b/crates/tower-api/src/models/create_api_key_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_app_params.rs b/crates/tower-api/src/models/create_app_params.rs index ea6f1d8e..d4b9860f 100644 --- a/crates/tower-api/src/models/create_app_params.rs +++ b/crates/tower-api/src/models/create_app_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_app_response.rs b/crates/tower-api/src/models/create_app_response.rs index d1b53281..8c83a5c3 100644 --- a/crates/tower-api/src/models/create_app_response.rs +++ b/crates/tower-api/src/models/create_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_authenticator_params.rs b/crates/tower-api/src/models/create_authenticator_params.rs index 92a64066..c68f8f86 100644 --- a/crates/tower-api/src/models/create_authenticator_params.rs +++ b/crates/tower-api/src/models/create_authenticator_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_authenticator_response.rs b/crates/tower-api/src/models/create_authenticator_response.rs index d3498c96..28d955a7 100644 --- a/crates/tower-api/src/models/create_authenticator_response.rs +++ b/crates/tower-api/src/models/create_authenticator_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_catalog_params.rs b/crates/tower-api/src/models/create_catalog_params.rs index 41c699fc..ebaf9bd8 100644 --- a/crates/tower-api/src/models/create_catalog_params.rs +++ b/crates/tower-api/src/models/create_catalog_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_catalog_response.rs b/crates/tower-api/src/models/create_catalog_response.rs index e78b6c1c..27533731 100644 --- a/crates/tower-api/src/models/create_catalog_response.rs +++ b/crates/tower-api/src/models/create_catalog_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_device_login_ticket_response.rs b/crates/tower-api/src/models/create_device_login_ticket_response.rs index 0ff492dd..42b7a73b 100644 --- a/crates/tower-api/src/models/create_device_login_ticket_response.rs +++ b/crates/tower-api/src/models/create_device_login_ticket_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_environment_params.rs b/crates/tower-api/src/models/create_environment_params.rs index a3308694..c64a7513 100644 --- a/crates/tower-api/src/models/create_environment_params.rs +++ b/crates/tower-api/src/models/create_environment_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_environment_response.rs b/crates/tower-api/src/models/create_environment_response.rs index ca42e761..1701d7f0 100644 --- a/crates/tower-api/src/models/create_environment_response.rs +++ b/crates/tower-api/src/models/create_environment_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_password_reset_params.rs b/crates/tower-api/src/models/create_password_reset_params.rs index d4d13577..20b49a65 100644 --- a/crates/tower-api/src/models/create_password_reset_params.rs +++ b/crates/tower-api/src/models/create_password_reset_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_password_reset_response.rs b/crates/tower-api/src/models/create_password_reset_response.rs index ad2a0c8a..5511300b 100644 --- a/crates/tower-api/src/models/create_password_reset_response.rs +++ b/crates/tower-api/src/models/create_password_reset_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_sandbox_secrets_params.rs b/crates/tower-api/src/models/create_sandbox_secrets_params.rs index eb050208..155b02a9 100644 --- a/crates/tower-api/src/models/create_sandbox_secrets_params.rs +++ b/crates/tower-api/src/models/create_sandbox_secrets_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_sandbox_secrets_response.rs b/crates/tower-api/src/models/create_sandbox_secrets_response.rs index 935f7c9d..bd4b5d49 100644 --- a/crates/tower-api/src/models/create_sandbox_secrets_response.rs +++ b/crates/tower-api/src/models/create_sandbox_secrets_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_schedule_params.rs b/crates/tower-api/src/models/create_schedule_params.rs index b620d28e..0722dafd 100644 --- a/crates/tower-api/src/models/create_schedule_params.rs +++ b/crates/tower-api/src/models/create_schedule_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -36,6 +36,22 @@ pub struct CreateScheduleParams { /// The environment to run the app in #[serde(rename = "environment", skip_serializing_if = "Option::is_none")] pub environment: Option, + /// The name for this schedule. Must be unique per environment. If not set, one will be generated for you. + #[serde( + rename = "name", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub name: Option>, + /// The overlap policy for the schedule + #[serde( + rename = "overlap_policy", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub overlap_policy: Option>, /// Parameters to pass when running the app #[serde(rename = "parameters", skip_serializing_if = "Option::is_none")] pub parameters: Option>, @@ -57,11 +73,41 @@ impl CreateScheduleParams { app_version: None, cron, environment: None, + name: None, + overlap_policy: None, parameters: None, status: None, } } } +/// The overlap policy for the schedule +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum OverlapPolicy { + #[serde(rename = "skip")] + Skip, + #[serde(rename = "allow")] + Allow, +} + +impl Default for OverlapPolicy { + fn default() -> OverlapPolicy { + Self::Skip + } +} + +impl<'de> Deserialize<'de> for OverlapPolicy { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "skip" => Ok(Self::Skip), + "allow" => Ok(Self::Allow), + _ => Err(serde::de::Error::unknown_variant(&s, &["skip", "allow"])), + } + } +} /// The status of the schedule (defaults to active) #[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] pub enum Status { diff --git a/crates/tower-api/src/models/create_schedule_response.rs b/crates/tower-api/src/models/create_schedule_response.rs index 92fee6ad..2250bb90 100644 --- a/crates/tower-api/src/models/create_schedule_response.rs +++ b/crates/tower-api/src/models/create_schedule_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_secret_params.rs b/crates/tower-api/src/models/create_secret_params.rs index 35956065..f24537c9 100644 --- a/crates/tower-api/src/models/create_secret_params.rs +++ b/crates/tower-api/src/models/create_secret_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_secret_response.rs b/crates/tower-api/src/models/create_secret_response.rs index c6494b3c..772e0eb3 100644 --- a/crates/tower-api/src/models/create_secret_response.rs +++ b/crates/tower-api/src/models/create_secret_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_session_params.rs b/crates/tower-api/src/models/create_session_params.rs index efb51f48..60eed470 100644 --- a/crates/tower-api/src/models/create_session_params.rs +++ b/crates/tower-api/src/models/create_session_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_session_response.rs b/crates/tower-api/src/models/create_session_response.rs index 9c4c3152..d415e053 100644 --- a/crates/tower-api/src/models/create_session_response.rs +++ b/crates/tower-api/src/models/create_session_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_team_params.rs b/crates/tower-api/src/models/create_team_params.rs index 1970cc56..f09628d3 100644 --- a/crates/tower-api/src/models/create_team_params.rs +++ b/crates/tower-api/src/models/create_team_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_team_response.rs b/crates/tower-api/src/models/create_team_response.rs index ec418164..be169e58 100644 --- a/crates/tower-api/src/models/create_team_response.rs +++ b/crates/tower-api/src/models/create_team_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/create_webhook_params.rs b/crates/tower-api/src/models/create_webhook_params.rs new file mode 100644 index 00000000..3f2ffce5 --- /dev/null +++ b/crates/tower-api/src/models/create_webhook_params.rs @@ -0,0 +1,38 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct CreateWebhookParams { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The name of the webhook. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, + /// The webhook URL. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "url")] + pub url: String, +} + +impl CreateWebhookParams { + pub fn new(name: String, url: String) -> CreateWebhookParams { + CreateWebhookParams { + schema: None, + name, + url, + } + } +} diff --git a/crates/tower-api/src/models/create_webhook_response.rs b/crates/tower-api/src/models/create_webhook_response.rs new file mode 100644 index 00000000..dffd45b3 --- /dev/null +++ b/crates/tower-api/src/models/create_webhook_response.rs @@ -0,0 +1,36 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct CreateWebhookResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "signing_key")] + pub signing_key: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhook")] + pub webhook: models::Webhook, +} + +impl CreateWebhookResponse { + pub fn new(signing_key: String, webhook: models::Webhook) -> CreateWebhookResponse { + CreateWebhookResponse { + schema: None, + signing_key, + webhook, + } + } +} diff --git a/crates/tower-api/src/models/delete_api_key_params.rs b/crates/tower-api/src/models/delete_api_key_params.rs index 7bd607a9..86fc1f8e 100644 --- a/crates/tower-api/src/models/delete_api_key_params.rs +++ b/crates/tower-api/src/models/delete_api_key_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_api_key_response.rs b/crates/tower-api/src/models/delete_api_key_response.rs index 51b6d859..4832a796 100644 --- a/crates/tower-api/src/models/delete_api_key_response.rs +++ b/crates/tower-api/src/models/delete_api_key_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_app_response.rs b/crates/tower-api/src/models/delete_app_response.rs index cf1fd834..9b464f0e 100644 --- a/crates/tower-api/src/models/delete_app_response.rs +++ b/crates/tower-api/src/models/delete_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_authenticator_params.rs b/crates/tower-api/src/models/delete_authenticator_params.rs index a6d9ccf3..50025867 100644 --- a/crates/tower-api/src/models/delete_authenticator_params.rs +++ b/crates/tower-api/src/models/delete_authenticator_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_authenticator_response.rs b/crates/tower-api/src/models/delete_authenticator_response.rs index 5635919b..38a0c591 100644 --- a/crates/tower-api/src/models/delete_authenticator_response.rs +++ b/crates/tower-api/src/models/delete_authenticator_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_catalog_response.rs b/crates/tower-api/src/models/delete_catalog_response.rs index 944b6837..f14327e1 100644 --- a/crates/tower-api/src/models/delete_catalog_response.rs +++ b/crates/tower-api/src/models/delete_catalog_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_schedule_params.rs b/crates/tower-api/src/models/delete_schedule_params.rs index 0d074624..730d4c1d 100644 --- a/crates/tower-api/src/models/delete_schedule_params.rs +++ b/crates/tower-api/src/models/delete_schedule_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_schedule_response.rs b/crates/tower-api/src/models/delete_schedule_response.rs index 3ecd5e64..9a193cbf 100644 --- a/crates/tower-api/src/models/delete_schedule_response.rs +++ b/crates/tower-api/src/models/delete_schedule_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_secret_response.rs b/crates/tower-api/src/models/delete_secret_response.rs index dffbc1c5..e89d0184 100644 --- a/crates/tower-api/src/models/delete_secret_response.rs +++ b/crates/tower-api/src/models/delete_secret_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_session_params.rs b/crates/tower-api/src/models/delete_session_params.rs new file mode 100644 index 00000000..d3d5dcd7 --- /dev/null +++ b/crates/tower-api/src/models/delete_session_params.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DeleteSessionParams { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The ID of the session to delete. If not provided, the current session will be deleted. + #[serde(rename = "session_id", skip_serializing_if = "Option::is_none")] + pub session_id: Option, +} + +impl DeleteSessionParams { + pub fn new() -> DeleteSessionParams { + DeleteSessionParams { + schema: None, + session_id: None, + } + } +} diff --git a/crates/tower-api/src/models/delete_session_response.rs b/crates/tower-api/src/models/delete_session_response.rs new file mode 100644 index 00000000..821fd307 --- /dev/null +++ b/crates/tower-api/src/models/delete_session_response.rs @@ -0,0 +1,33 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DeleteSessionResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The session that was deleted. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "session")] + pub session: models::Session, +} + +impl DeleteSessionResponse { + pub fn new(session: models::Session) -> DeleteSessionResponse { + DeleteSessionResponse { + schema: None, + session, + } + } +} diff --git a/crates/tower-api/src/models/delete_team_invitation_params.rs b/crates/tower-api/src/models/delete_team_invitation_params.rs index a0d5a420..2bbd18e7 100644 --- a/crates/tower-api/src/models/delete_team_invitation_params.rs +++ b/crates/tower-api/src/models/delete_team_invitation_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_team_invitation_response.rs b/crates/tower-api/src/models/delete_team_invitation_response.rs index 7de39efe..375a85c9 100644 --- a/crates/tower-api/src/models/delete_team_invitation_response.rs +++ b/crates/tower-api/src/models/delete_team_invitation_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_team_params.rs b/crates/tower-api/src/models/delete_team_params.rs index c0395b64..18aa210e 100644 --- a/crates/tower-api/src/models/delete_team_params.rs +++ b/crates/tower-api/src/models/delete_team_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_team_response.rs b/crates/tower-api/src/models/delete_team_response.rs index d150916a..8af36c48 100644 --- a/crates/tower-api/src/models/delete_team_response.rs +++ b/crates/tower-api/src/models/delete_team_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/delete_webhook_response.rs b/crates/tower-api/src/models/delete_webhook_response.rs new file mode 100644 index 00000000..576a8143 --- /dev/null +++ b/crates/tower-api/src/models/delete_webhook_response.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DeleteWebhookResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhook")] + pub webhook: models::Webhook, +} + +impl DeleteWebhookResponse { + pub fn new(webhook: models::Webhook) -> DeleteWebhookResponse { + DeleteWebhookResponse { + schema: None, + webhook, + } + } +} diff --git a/crates/tower-api/src/models/deploy_app_request.rs b/crates/tower-api/src/models/deploy_app_request.rs index 3f429622..c78ff26a 100644 --- a/crates/tower-api/src/models/deploy_app_request.rs +++ b/crates/tower-api/src/models/deploy_app_request.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/deploy_app_response.rs b/crates/tower-api/src/models/deploy_app_response.rs index 5959eb39..d3f32fbd 100644 --- a/crates/tower-api/src/models/deploy_app_response.rs +++ b/crates/tower-api/src/models/deploy_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_account_body.rs b/crates/tower-api/src/models/describe_account_body.rs index 7f7fbbb4..f0386a19 100644 --- a/crates/tower-api/src/models/describe_account_body.rs +++ b/crates/tower-api/src/models/describe_account_body.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_app_response.rs b/crates/tower-api/src/models/describe_app_response.rs index fd68b992..b6bced63 100644 --- a/crates/tower-api/src/models/describe_app_response.rs +++ b/crates/tower-api/src/models/describe_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_app_version_response.rs b/crates/tower-api/src/models/describe_app_version_response.rs index ca0a932c..e605dae3 100644 --- a/crates/tower-api/src/models/describe_app_version_response.rs +++ b/crates/tower-api/src/models/describe_app_version_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_authentication_context_body.rs b/crates/tower-api/src/models/describe_authentication_context_body.rs new file mode 100644 index 00000000..53225a17 --- /dev/null +++ b/crates/tower-api/src/models/describe_authentication_context_body.rs @@ -0,0 +1,34 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DescribeAuthenticationContextBody { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "authentication_context")] + pub authentication_context: models::AuthenticationContext, +} + +impl DescribeAuthenticationContextBody { + pub fn new( + authentication_context: models::AuthenticationContext, + ) -> DescribeAuthenticationContextBody { + DescribeAuthenticationContextBody { + schema: None, + authentication_context, + } + } +} diff --git a/crates/tower-api/src/models/describe_device_login_session_response.rs b/crates/tower-api/src/models/describe_device_login_session_response.rs index 944361be..a5e83084 100644 --- a/crates/tower-api/src/models/describe_device_login_session_response.rs +++ b/crates/tower-api/src/models/describe_device_login_session_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_email_preferences_body.rs b/crates/tower-api/src/models/describe_email_preferences_body.rs index 0d5d9652..af7061a4 100644 --- a/crates/tower-api/src/models/describe_email_preferences_body.rs +++ b/crates/tower-api/src/models/describe_email_preferences_body.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_plan_response.rs b/crates/tower-api/src/models/describe_plan_response.rs new file mode 100644 index 00000000..518e2e06 --- /dev/null +++ b/crates/tower-api/src/models/describe_plan_response.rs @@ -0,0 +1,29 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DescribePlanResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "plan")] + pub plan: models::Plan, +} + +impl DescribePlanResponse { + pub fn new(plan: models::Plan) -> DescribePlanResponse { + DescribePlanResponse { schema: None, plan } + } +} diff --git a/crates/tower-api/src/models/describe_run_graph_response.rs b/crates/tower-api/src/models/describe_run_graph_response.rs index 9799c145..a1598872 100644 --- a/crates/tower-api/src/models/describe_run_graph_response.rs +++ b/crates/tower-api/src/models/describe_run_graph_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_run_links.rs b/crates/tower-api/src/models/describe_run_links.rs index f6a0fe10..80812642 100644 --- a/crates/tower-api/src/models/describe_run_links.rs +++ b/crates/tower-api/src/models/describe_run_links.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_run_logs_response.rs b/crates/tower-api/src/models/describe_run_logs_response.rs index 2370e71f..8f4e91f6 100644 --- a/crates/tower-api/src/models/describe_run_logs_response.rs +++ b/crates/tower-api/src/models/describe_run_logs_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_run_response.rs b/crates/tower-api/src/models/describe_run_response.rs index 94967167..40f8326b 100644 --- a/crates/tower-api/src/models/describe_run_response.rs +++ b/crates/tower-api/src/models/describe_run_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_secrets_key_response.rs b/crates/tower-api/src/models/describe_secrets_key_response.rs index 4777f2d6..03c0fb8f 100644 --- a/crates/tower-api/src/models/describe_secrets_key_response.rs +++ b/crates/tower-api/src/models/describe_secrets_key_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_session_response.rs b/crates/tower-api/src/models/describe_session_response.rs index 577ae74f..5242f053 100644 --- a/crates/tower-api/src/models/describe_session_response.rs +++ b/crates/tower-api/src/models/describe_session_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/describe_team_response.rs b/crates/tower-api/src/models/describe_team_response.rs new file mode 100644 index 00000000..adbd317c --- /dev/null +++ b/crates/tower-api/src/models/describe_team_response.rs @@ -0,0 +1,47 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DescribeTeamResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// Pending team invitations + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "invitations")] + pub invitations: Vec, + /// The members of the team + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "members")] + pub members: Vec, + /// The team details + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "team")] + pub team: models::Team, +} + +impl DescribeTeamResponse { + pub fn new( + invitations: Vec, + members: Vec, + team: models::Team, + ) -> DescribeTeamResponse { + DescribeTeamResponse { + schema: None, + invitations, + members, + team, + } + } +} diff --git a/crates/tower-api/src/models/describe_webhook_response.rs b/crates/tower-api/src/models/describe_webhook_response.rs new file mode 100644 index 00000000..beebade2 --- /dev/null +++ b/crates/tower-api/src/models/describe_webhook_response.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct DescribeWebhookResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhook")] + pub webhook: models::Webhook, +} + +impl DescribeWebhookResponse { + pub fn new(webhook: models::Webhook) -> DescribeWebhookResponse { + DescribeWebhookResponse { + schema: None, + webhook, + } + } +} diff --git a/crates/tower-api/src/models/email_subscriptions.rs b/crates/tower-api/src/models/email_subscriptions.rs index dd34a85f..0e170de0 100644 --- a/crates/tower-api/src/models/email_subscriptions.rs +++ b/crates/tower-api/src/models/email_subscriptions.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/encrypted_catalog_property.rs b/crates/tower-api/src/models/encrypted_catalog_property.rs index 181190d3..b46c7367 100644 --- a/crates/tower-api/src/models/encrypted_catalog_property.rs +++ b/crates/tower-api/src/models/encrypted_catalog_property.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/environment.rs b/crates/tower-api/src/models/environment.rs index c3ee117e..b480c1f1 100644 --- a/crates/tower-api/src/models/environment.rs +++ b/crates/tower-api/src/models/environment.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/error_detail.rs b/crates/tower-api/src/models/error_detail.rs index 53ffc1da..20436fee 100644 --- a/crates/tower-api/src/models/error_detail.rs +++ b/crates/tower-api/src/models/error_detail.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/error_model.rs b/crates/tower-api/src/models/error_model.rs index 7e604826..09160ca7 100644 --- a/crates/tower-api/src/models/error_model.rs +++ b/crates/tower-api/src/models/error_model.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/event_alert.rs b/crates/tower-api/src/models/event_alert.rs index 9e5d32f5..754229b8 100644 --- a/crates/tower-api/src/models/event_alert.rs +++ b/crates/tower-api/src/models/event_alert.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/event_error.rs b/crates/tower-api/src/models/event_error.rs index bc5b2ec7..90dc0c69 100644 --- a/crates/tower-api/src/models/event_error.rs +++ b/crates/tower-api/src/models/event_error.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/event_log.rs b/crates/tower-api/src/models/event_log.rs index 0d7fed77..2f1d278b 100644 --- a/crates/tower-api/src/models/event_log.rs +++ b/crates/tower-api/src/models/event_log.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/event_shouldertap.rs b/crates/tower-api/src/models/event_shouldertap.rs new file mode 100644 index 00000000..2c170723 --- /dev/null +++ b/crates/tower-api/src/models/event_shouldertap.rs @@ -0,0 +1,66 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct EventShouldertap { + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "data")] + pub data: models::ShoulderTap, + /// The event name. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "event")] + pub event: Event, + /// The event ID. + #[serde(rename = "id", skip_serializing_if = "Option::is_none")] + pub id: Option, + /// The retry time in milliseconds. + #[serde(rename = "retry", skip_serializing_if = "Option::is_none")] + pub retry: Option, +} + +impl EventShouldertap { + pub fn new(data: models::ShoulderTap, event: Event) -> EventShouldertap { + EventShouldertap { + data, + event, + id: None, + retry: None, + } + } +} +/// The event name. +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Event { + #[serde(rename = "shouldertap")] + Shouldertap, +} + +impl Default for Event { + fn default() -> Event { + Self::Shouldertap + } +} + +impl<'de> Deserialize<'de> for Event { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "shouldertap" => Ok(Self::Shouldertap), + _ => Err(serde::de::Error::unknown_variant(&s, &["shouldertap"])), + } + } +} diff --git a/crates/tower-api/src/models/event_warning.rs b/crates/tower-api/src/models/event_warning.rs index 6f8b4dac..208ea897 100644 --- a/crates/tower-api/src/models/event_warning.rs +++ b/crates/tower-api/src/models/event_warning.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/export_catalogs_params.rs b/crates/tower-api/src/models/export_catalogs_params.rs index 09886430..08809fd4 100644 --- a/crates/tower-api/src/models/export_catalogs_params.rs +++ b/crates/tower-api/src/models/export_catalogs_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/export_catalogs_response.rs b/crates/tower-api/src/models/export_catalogs_response.rs index bd312a8a..7d492567 100644 --- a/crates/tower-api/src/models/export_catalogs_response.rs +++ b/crates/tower-api/src/models/export_catalogs_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/export_secrets_params.rs b/crates/tower-api/src/models/export_secrets_params.rs index 9f44a7c6..076e82de 100644 --- a/crates/tower-api/src/models/export_secrets_params.rs +++ b/crates/tower-api/src/models/export_secrets_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/export_secrets_response.rs b/crates/tower-api/src/models/export_secrets_response.rs index 171a9169..a8597f9b 100644 --- a/crates/tower-api/src/models/export_secrets_response.rs +++ b/crates/tower-api/src/models/export_secrets_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/exported_catalog.rs b/crates/tower-api/src/models/exported_catalog.rs index 768ce29a..70973c42 100644 --- a/crates/tower-api/src/models/exported_catalog.rs +++ b/crates/tower-api/src/models/exported_catalog.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -26,7 +26,7 @@ pub struct ExportedCatalog { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "properties")] pub properties: Vec, - /// This property is deprecated. Please use name instead. + /// This property is deprecated. Use name instead. #[serde(rename = "slug", skip_serializing_if = "Option::is_none")] pub slug: Option, #[serde_as(as = "DefaultOnNull")] diff --git a/crates/tower-api/src/models/exported_catalog_property.rs b/crates/tower-api/src/models/exported_catalog_property.rs index 91a37eb6..2404cdce 100644 --- a/crates/tower-api/src/models/exported_catalog_property.rs +++ b/crates/tower-api/src/models/exported_catalog_property.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/exported_secret.rs b/crates/tower-api/src/models/exported_secret.rs index e7a6c212..aaef7714 100644 --- a/crates/tower-api/src/models/exported_secret.rs +++ b/crates/tower-api/src/models/exported_secret.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/feature.rs b/crates/tower-api/src/models/feature.rs new file mode 100644 index 00000000..ff0abdd8 --- /dev/null +++ b/crates/tower-api/src/models/feature.rs @@ -0,0 +1,40 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct Feature { + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "code")] + pub code: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "type")] + pub r#type: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "value")] + pub value: i64, +} + +impl Feature { + pub fn new(code: String, name: String, r#type: String, value: i64) -> Feature { + Feature { + code, + name, + r#type, + value, + } + } +} diff --git a/crates/tower-api/src/models/featurebase_identity.rs b/crates/tower-api/src/models/featurebase_identity.rs index 5eab8b83..762f6f9c 100644 --- a/crates/tower-api/src/models/featurebase_identity.rs +++ b/crates/tower-api/src/models/featurebase_identity.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/generate_app_statistics_response.rs b/crates/tower-api/src/models/generate_app_statistics_response.rs index 8b8063b6..9849ae28 100644 --- a/crates/tower-api/src/models/generate_app_statistics_response.rs +++ b/crates/tower-api/src/models/generate_app_statistics_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/generate_authenticator_response.rs b/crates/tower-api/src/models/generate_authenticator_response.rs index fcbff0b9..9d1f2b0a 100644 --- a/crates/tower-api/src/models/generate_authenticator_response.rs +++ b/crates/tower-api/src/models/generate_authenticator_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/generate_run_statistics_response.rs b/crates/tower-api/src/models/generate_run_statistics_response.rs index 2ebf3a2f..a17343b7 100644 --- a/crates/tower-api/src/models/generate_run_statistics_response.rs +++ b/crates/tower-api/src/models/generate_run_statistics_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/generate_runner_credentials_response.rs b/crates/tower-api/src/models/generate_runner_credentials_response.rs index 014ccf89..c1e90c4e 100644 --- a/crates/tower-api/src/models/generate_runner_credentials_response.rs +++ b/crates/tower-api/src/models/generate_runner_credentials_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/get_feature_flag_response_body.rs b/crates/tower-api/src/models/get_feature_flag_response_body.rs index 6784096f..cee7b7b6 100644 --- a/crates/tower-api/src/models/get_feature_flag_response_body.rs +++ b/crates/tower-api/src/models/get_feature_flag_response_body.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/invite_team_member_params.rs b/crates/tower-api/src/models/invite_team_member_params.rs index 86b8f52b..3280c32e 100644 --- a/crates/tower-api/src/models/invite_team_member_params.rs +++ b/crates/tower-api/src/models/invite_team_member_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/invite_team_member_response.rs b/crates/tower-api/src/models/invite_team_member_response.rs index 8b5fa769..c0945027 100644 --- a/crates/tower-api/src/models/invite_team_member_response.rs +++ b/crates/tower-api/src/models/invite_team_member_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/leave_team_response.rs b/crates/tower-api/src/models/leave_team_response.rs index 433b1f2c..1fb7dc63 100644 --- a/crates/tower-api/src/models/leave_team_response.rs +++ b/crates/tower-api/src/models/leave_team_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_alerts_response.rs b/crates/tower-api/src/models/list_alerts_response.rs index 99594fdf..6c420d3e 100644 --- a/crates/tower-api/src/models/list_alerts_response.rs +++ b/crates/tower-api/src/models/list_alerts_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_api_keys_response.rs b/crates/tower-api/src/models/list_api_keys_response.rs index 6d939c0e..c42bcbd0 100644 --- a/crates/tower-api/src/models/list_api_keys_response.rs +++ b/crates/tower-api/src/models/list_api_keys_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_app_environments_response.rs b/crates/tower-api/src/models/list_app_environments_response.rs index e5d1a793..45c7ce8f 100644 --- a/crates/tower-api/src/models/list_app_environments_response.rs +++ b/crates/tower-api/src/models/list_app_environments_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_app_versions_response.rs b/crates/tower-api/src/models/list_app_versions_response.rs index b83ed0b7..1db80ce8 100644 --- a/crates/tower-api/src/models/list_app_versions_response.rs +++ b/crates/tower-api/src/models/list_app_versions_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_apps_response.rs b/crates/tower-api/src/models/list_apps_response.rs index e19d6bf1..4e2b70cb 100644 --- a/crates/tower-api/src/models/list_apps_response.rs +++ b/crates/tower-api/src/models/list_apps_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_authenticators_response.rs b/crates/tower-api/src/models/list_authenticators_response.rs index 2bf1f7cf..168ea98a 100644 --- a/crates/tower-api/src/models/list_authenticators_response.rs +++ b/crates/tower-api/src/models/list_authenticators_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_catalogs_response.rs b/crates/tower-api/src/models/list_catalogs_response.rs index c6c18c4f..cf4540fe 100644 --- a/crates/tower-api/src/models/list_catalogs_response.rs +++ b/crates/tower-api/src/models/list_catalogs_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_environments_response.rs b/crates/tower-api/src/models/list_environments_response.rs index 5bcd03ac..dcc21d16 100644 --- a/crates/tower-api/src/models/list_environments_response.rs +++ b/crates/tower-api/src/models/list_environments_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_my_team_invitations_response.rs b/crates/tower-api/src/models/list_my_team_invitations_response.rs index e2b366af..0526baa8 100644 --- a/crates/tower-api/src/models/list_my_team_invitations_response.rs +++ b/crates/tower-api/src/models/list_my_team_invitations_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_runners_response.rs b/crates/tower-api/src/models/list_runners_response.rs index 905e4730..e2117737 100644 --- a/crates/tower-api/src/models/list_runners_response.rs +++ b/crates/tower-api/src/models/list_runners_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_runs_response.rs b/crates/tower-api/src/models/list_runs_response.rs index d1e921af..d6b14a25 100644 --- a/crates/tower-api/src/models/list_runs_response.rs +++ b/crates/tower-api/src/models/list_runs_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_schedules_response.rs b/crates/tower-api/src/models/list_schedules_response.rs index 9da945c6..b8e84277 100644 --- a/crates/tower-api/src/models/list_schedules_response.rs +++ b/crates/tower-api/src/models/list_schedules_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_secret_environments_response.rs b/crates/tower-api/src/models/list_secret_environments_response.rs index d623627f..f316531e 100644 --- a/crates/tower-api/src/models/list_secret_environments_response.rs +++ b/crates/tower-api/src/models/list_secret_environments_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_secrets_response.rs b/crates/tower-api/src/models/list_secrets_response.rs index 170cf52d..9830b563 100644 --- a/crates/tower-api/src/models/list_secrets_response.rs +++ b/crates/tower-api/src/models/list_secrets_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_team_invitations_response.rs b/crates/tower-api/src/models/list_team_invitations_response.rs index 841819b8..1efe24c6 100644 --- a/crates/tower-api/src/models/list_team_invitations_response.rs +++ b/crates/tower-api/src/models/list_team_invitations_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_team_members_response.rs b/crates/tower-api/src/models/list_team_members_response.rs index 8a2c1760..db467231 100644 --- a/crates/tower-api/src/models/list_team_members_response.rs +++ b/crates/tower-api/src/models/list_team_members_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -20,11 +20,11 @@ pub struct ListTeamMembersResponse { /// All of the members of a team #[serde_as(as = "DefaultOnNull")] #[serde(rename = "team_members")] - pub team_members: Vec, + pub team_members: Vec, } impl ListTeamMembersResponse { - pub fn new(team_members: Vec) -> ListTeamMembersResponse { + pub fn new(team_members: Vec) -> ListTeamMembersResponse { ListTeamMembersResponse { schema: None, team_members, diff --git a/crates/tower-api/src/models/list_teams_response.rs b/crates/tower-api/src/models/list_teams_response.rs index 077402f7..6d5b727c 100644 --- a/crates/tower-api/src/models/list_teams_response.rs +++ b/crates/tower-api/src/models/list_teams_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/list_webhooks_response.rs b/crates/tower-api/src/models/list_webhooks_response.rs new file mode 100644 index 00000000..b9a8beaf --- /dev/null +++ b/crates/tower-api/src/models/list_webhooks_response.rs @@ -0,0 +1,36 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct ListWebhooksResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "pages")] + pub pages: models::Pagination, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhooks")] + pub webhooks: Vec, +} + +impl ListWebhooksResponse { + pub fn new(pages: models::Pagination, webhooks: Vec) -> ListWebhooksResponse { + ListWebhooksResponse { + schema: None, + pages, + webhooks, + } + } +} diff --git a/crates/tower-api/src/models/mod.rs b/crates/tower-api/src/models/mod.rs index 9ce820b5..d9be66e5 100644 --- a/crates/tower-api/src/models/mod.rs +++ b/crates/tower-api/src/models/mod.rs @@ -16,6 +16,8 @@ pub mod app_summary; pub use self::app_summary::AppSummary; pub mod app_version; pub use self::app_version::AppVersion; +pub mod authentication_context; +pub use self::authentication_context::AuthenticationContext; pub mod batch_schedule_params; pub use self::batch_schedule_params::BatchScheduleParams; pub mod batch_schedule_response; @@ -82,6 +84,10 @@ pub mod create_team_params; pub use self::create_team_params::CreateTeamParams; pub mod create_team_response; pub use self::create_team_response::CreateTeamResponse; +pub mod create_webhook_params; +pub use self::create_webhook_params::CreateWebhookParams; +pub mod create_webhook_response; +pub use self::create_webhook_response::CreateWebhookResponse; pub mod delete_api_key_params; pub use self::delete_api_key_params::DeleteApiKeyParams; pub mod delete_api_key_response; @@ -100,6 +106,10 @@ pub mod delete_schedule_response; pub use self::delete_schedule_response::DeleteScheduleResponse; pub mod delete_secret_response; pub use self::delete_secret_response::DeleteSecretResponse; +pub mod delete_session_params; +pub use self::delete_session_params::DeleteSessionParams; +pub mod delete_session_response; +pub use self::delete_session_response::DeleteSessionResponse; pub mod delete_team_invitation_params; pub use self::delete_team_invitation_params::DeleteTeamInvitationParams; pub mod delete_team_invitation_response; @@ -108,6 +118,8 @@ pub mod delete_team_params; pub use self::delete_team_params::DeleteTeamParams; pub mod delete_team_response; pub use self::delete_team_response::DeleteTeamResponse; +pub mod delete_webhook_response; +pub use self::delete_webhook_response::DeleteWebhookResponse; pub mod deploy_app_request; pub use self::deploy_app_request::DeployAppRequest; pub mod deploy_app_response; @@ -118,10 +130,14 @@ pub mod describe_app_response; pub use self::describe_app_response::DescribeAppResponse; pub mod describe_app_version_response; pub use self::describe_app_version_response::DescribeAppVersionResponse; +pub mod describe_authentication_context_body; +pub use self::describe_authentication_context_body::DescribeAuthenticationContextBody; pub mod describe_device_login_session_response; pub use self::describe_device_login_session_response::DescribeDeviceLoginSessionResponse; pub mod describe_email_preferences_body; pub use self::describe_email_preferences_body::DescribeEmailPreferencesBody; +pub mod describe_plan_response; +pub use self::describe_plan_response::DescribePlanResponse; pub mod describe_run_graph_response; pub use self::describe_run_graph_response::DescribeRunGraphResponse; pub mod describe_run_links; @@ -134,6 +150,10 @@ pub mod describe_secrets_key_response; pub use self::describe_secrets_key_response::DescribeSecretsKeyResponse; pub mod describe_session_response; pub use self::describe_session_response::DescribeSessionResponse; +pub mod describe_team_response; +pub use self::describe_team_response::DescribeTeamResponse; +pub mod describe_webhook_response; +pub use self::describe_webhook_response::DescribeWebhookResponse; pub mod email_subscriptions; pub use self::email_subscriptions::EmailSubscriptions; pub mod encrypted_catalog_property; @@ -150,6 +170,8 @@ pub mod event_error; pub use self::event_error::EventError; pub mod event_log; pub use self::event_log::EventLog; +pub mod event_shouldertap; +pub use self::event_shouldertap::EventShouldertap; pub mod event_warning; pub use self::event_warning::EventWarning; pub mod export_catalogs_params; @@ -166,10 +188,10 @@ pub mod exported_catalog_property; pub use self::exported_catalog_property::ExportedCatalogProperty; pub mod exported_secret; pub use self::exported_secret::ExportedSecret; +pub mod feature; +pub use self::feature::Feature; pub mod featurebase_identity; pub use self::featurebase_identity::FeaturebaseIdentity; -pub mod features; -pub use self::features::Features; pub mod generate_app_statistics_response; pub use self::generate_app_statistics_response::GenerateAppStatisticsResponse; pub mod generate_authenticator_response; @@ -186,8 +208,6 @@ pub mod invite_team_member_response; pub use self::invite_team_member_response::InviteTeamMemberResponse; pub mod leave_team_response; pub use self::leave_team_response::LeaveTeamResponse; -pub mod list_account_plans_response; -pub use self::list_account_plans_response::ListAccountPlansResponse; pub mod list_alerts_response; pub use self::list_alerts_response::ListAlertsResponse; pub mod list_api_keys_response; @@ -222,6 +242,10 @@ pub mod list_team_members_response; pub use self::list_team_members_response::ListTeamMembersResponse; pub mod list_teams_response; pub use self::list_teams_response::ListTeamsResponse; +pub mod list_webhooks_response; +pub use self::list_webhooks_response::ListWebhooksResponse; +pub mod organization; +pub use self::organization::Organization; pub mod pagination; pub use self::pagination::Pagination; pub mod parameter; @@ -256,12 +280,16 @@ pub mod run_graph_run_id; pub use self::run_graph_run_id::RunGraphRunId; pub mod run_initiator; pub use self::run_initiator::RunInitiator; +pub mod run_initiator_details; +pub use self::run_initiator_details::RunInitiatorDetails; pub mod run_log_line; pub use self::run_log_line::RunLogLine; pub mod run_parameter; pub use self::run_parameter::RunParameter; pub mod run_results; pub use self::run_results::RunResults; +pub mod run_run_initiator_details; +pub use self::run_run_initiator_details::RunRunInitiatorDetails; pub mod run_statistics; pub use self::run_statistics::RunStatistics; pub mod run_timeseries_point; @@ -272,24 +300,34 @@ pub mod runner_credentials; pub use self::runner_credentials::RunnerCredentials; pub mod schedule; pub use self::schedule::Schedule; +pub mod schedule_run_initiator_details; +pub use self::schedule_run_initiator_details::ScheduleRunInitiatorDetails; pub mod search_runs_response; pub use self::search_runs_response::SearchRunsResponse; pub mod secret; pub use self::secret::Secret; +pub mod server_sent_events_inner; +pub use self::server_sent_events_inner::ServerSentEventsInner; +pub mod server_sent_events_inner_1; +pub use self::server_sent_events_inner_1::ServerSentEventsInner1; +pub mod server_sent_events_inner_2; +pub use self::server_sent_events_inner_2::ServerSentEventsInner2; pub mod session; pub use self::session::Session; +pub mod shoulder_tap; +pub use self::shoulder_tap::ShoulderTap; pub mod sse_warning; pub use self::sse_warning::SseWarning; pub mod statistics_settings; pub use self::statistics_settings::StatisticsSettings; -pub mod stream_alerts_200_response_inner; -pub use self::stream_alerts_200_response_inner::StreamAlerts200ResponseInner; -pub mod stream_run_logs_200_response_inner; -pub use self::stream_run_logs_200_response_inner::StreamRunLogs200ResponseInner; pub mod team; pub use self::team::Team; pub mod team_invitation; pub use self::team_invitation::TeamInvitation; +pub mod team_membership; +pub use self::team_membership::TeamMembership; +pub mod test_webhook_response; +pub use self::test_webhook_response::TestWebhookResponse; pub mod token; pub use self::token::Token; pub mod unverified_authenticator; @@ -316,6 +354,10 @@ pub mod update_my_team_invitation_params; pub use self::update_my_team_invitation_params::UpdateMyTeamInvitationParams; pub mod update_my_team_invitation_response; pub use self::update_my_team_invitation_response::UpdateMyTeamInvitationResponse; +pub mod update_organization_params; +pub use self::update_organization_params::UpdateOrganizationParams; +pub mod update_organization_response; +pub use self::update_organization_response::UpdateOrganizationResponse; pub mod update_password_reset_params; pub use self::update_password_reset_params::UpdatePasswordResetParams; pub mod update_password_reset_response; @@ -332,6 +374,10 @@ pub mod update_secret_params; pub use self::update_secret_params::UpdateSecretParams; pub mod update_secret_response; pub use self::update_secret_response::UpdateSecretResponse; +pub mod update_team_member_params; +pub use self::update_team_member_params::UpdateTeamMemberParams; +pub mod update_team_member_response; +pub use self::update_team_member_response::UpdateTeamMemberResponse; pub mod update_team_params; pub use self::update_team_params::UpdateTeamParams; pub mod update_team_response; @@ -340,6 +386,10 @@ pub mod update_user_params; pub use self::update_user_params::UpdateUserParams; pub mod update_user_response; pub use self::update_user_response::UpdateUserResponse; +pub mod update_webhook_params; +pub use self::update_webhook_params::UpdateWebhookParams; +pub mod update_webhook_response; +pub use self::update_webhook_response::UpdateWebhookResponse; pub mod user; pub use self::user::User; pub mod verified_authenticator; @@ -348,3 +398,5 @@ pub mod verify_email_params; pub use self::verify_email_params::VerifyEmailParams; pub mod verify_email_response; pub use self::verify_email_response::VerifyEmailResponse; +pub mod webhook; +pub use self::webhook::Webhook; diff --git a/crates/tower-api/src/models/organization.rs b/crates/tower-api/src/models/organization.rs new file mode 100644 index 00000000..c49734da --- /dev/null +++ b/crates/tower-api/src/models/organization.rs @@ -0,0 +1,31 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct Organization { + /// The name of the organization + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, + /// The user of the organization owner + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "owner")] + pub owner: models::User, +} + +impl Organization { + pub fn new(name: String, owner: models::User) -> Organization { + Organization { name, owner } + } +} diff --git a/crates/tower-api/src/models/pagination.rs b/crates/tower-api/src/models/pagination.rs index 6f8c6486..38152eb0 100644 --- a/crates/tower-api/src/models/pagination.rs +++ b/crates/tower-api/src/models/pagination.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/parameter.rs b/crates/tower-api/src/models/parameter.rs index 7f20d38e..ce85288d 100644 --- a/crates/tower-api/src/models/parameter.rs +++ b/crates/tower-api/src/models/parameter.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/plan.rs b/crates/tower-api/src/models/plan.rs index 3567c5fc..cce31a82 100644 --- a/crates/tower-api/src/models/plan.rs +++ b/crates/tower-api/src/models/plan.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -14,9 +14,6 @@ use serde_with::{serde_as, DefaultOnNull}; #[serde_as] #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] pub struct Plan { - #[serde_as(as = "DefaultOnNull")] - #[serde(rename = "account_id")] - pub account_id: String, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "base_plan_name")] pub base_plan_name: String, @@ -26,33 +23,27 @@ pub struct Plan { #[serde(rename = "end_at", skip_serializing_if = "Option::is_none")] pub end_at: Option, #[serde(rename = "extras", skip_serializing_if = "Option::is_none")] - pub extras: Option, + pub extras: Option>, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "features")] - pub features: models::Features, + pub features: Vec, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "id")] pub id: String, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "start_at")] pub start_at: String, - #[serde_as(as = "DefaultOnNull")] - #[serde(rename = "status")] - pub status: String, } impl Plan { pub fn new( - account_id: String, base_plan_name: String, created_at: String, - features: models::Features, + features: Vec, id: String, start_at: String, - status: String, ) -> Plan { Plan { - account_id, base_plan_name, created_at, end_at: None, @@ -60,7 +51,6 @@ impl Plan { features, id, start_at, - status, } } } diff --git a/crates/tower-api/src/models/refresh_session_params.rs b/crates/tower-api/src/models/refresh_session_params.rs index e8674654..0f7c6018 100644 --- a/crates/tower-api/src/models/refresh_session_params.rs +++ b/crates/tower-api/src/models/refresh_session_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -17,10 +17,16 @@ pub struct RefreshSessionParams { /// A URL to the JSON Schema for this object. #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] pub schema: Option, + /// The refresh token associated with the session to refresh. + #[serde(rename = "refresh_token", skip_serializing_if = "Option::is_none")] + pub refresh_token: Option, } impl RefreshSessionParams { pub fn new() -> RefreshSessionParams { - RefreshSessionParams { schema: None } + RefreshSessionParams { + schema: None, + refresh_token: None, + } } } diff --git a/crates/tower-api/src/models/refresh_session_response.rs b/crates/tower-api/src/models/refresh_session_response.rs index 9ced4515..2531a9e9 100644 --- a/crates/tower-api/src/models/refresh_session_response.rs +++ b/crates/tower-api/src/models/refresh_session_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/remove_team_member_params.rs b/crates/tower-api/src/models/remove_team_member_params.rs index e4814097..530f445a 100644 --- a/crates/tower-api/src/models/remove_team_member_params.rs +++ b/crates/tower-api/src/models/remove_team_member_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/remove_team_member_response.rs b/crates/tower-api/src/models/remove_team_member_response.rs index 921f0c73..c92005cf 100644 --- a/crates/tower-api/src/models/remove_team_member_response.rs +++ b/crates/tower-api/src/models/remove_team_member_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/resend_team_invitation_params.rs b/crates/tower-api/src/models/resend_team_invitation_params.rs index 88a909a5..4903d77b 100644 --- a/crates/tower-api/src/models/resend_team_invitation_params.rs +++ b/crates/tower-api/src/models/resend_team_invitation_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/resend_team_invitation_response.rs b/crates/tower-api/src/models/resend_team_invitation_response.rs index a8e04a9f..c23b921f 100644 --- a/crates/tower-api/src/models/resend_team_invitation_response.rs +++ b/crates/tower-api/src/models/resend_team_invitation_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run.rs b/crates/tower-api/src/models/run.rs index 666ab074..05d6b77b 100644 --- a/crates/tower-api/src/models/run.rs +++ b/crates/tower-api/src/models/run.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -21,7 +21,7 @@ pub struct Run { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "app_name")] pub app_name: String, - /// This property is deprecated. Please use app_name instead. + /// This property is deprecated. Use app_name instead. #[serde(rename = "app_slug", skip_serializing_if = "Option::is_none")] pub app_slug: Option, #[serde_as(as = "DefaultOnNull")] diff --git a/crates/tower-api/src/models/run_app_initiator_data.rs b/crates/tower-api/src/models/run_app_initiator_data.rs index 44ed3b83..d6ec46ac 100644 --- a/crates/tower-api/src/models/run_app_initiator_data.rs +++ b/crates/tower-api/src/models/run_app_initiator_data.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_app_params.rs b/crates/tower-api/src/models/run_app_params.rs index 69c9f822..e25cf4ac 100644 --- a/crates/tower-api/src/models/run_app_params.rs +++ b/crates/tower-api/src/models/run_app_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_app_response.rs b/crates/tower-api/src/models/run_app_response.rs index 45a26d6d..3629632f 100644 --- a/crates/tower-api/src/models/run_app_response.rs +++ b/crates/tower-api/src/models/run_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_failure_alert.rs b/crates/tower-api/src/models/run_failure_alert.rs index 9dfd6b45..6d2c18f9 100644 --- a/crates/tower-api/src/models/run_failure_alert.rs +++ b/crates/tower-api/src/models/run_failure_alert.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -18,6 +18,10 @@ pub struct RunFailureAlert { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "app")] pub app: models::App, + /// Environment this run was in + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "environment")] + pub environment: String, /// Run that failed #[serde_as(as = "DefaultOnNull")] #[serde(rename = "run")] @@ -25,7 +29,11 @@ pub struct RunFailureAlert { } impl RunFailureAlert { - pub fn new(app: models::App, run: models::Run) -> RunFailureAlert { - RunFailureAlert { app, run } + pub fn new(app: models::App, environment: String, run: models::Run) -> RunFailureAlert { + RunFailureAlert { + app, + environment, + run, + } } } diff --git a/crates/tower-api/src/models/run_graph_node.rs b/crates/tower-api/src/models/run_graph_node.rs index df1f3804..0b74c36a 100644 --- a/crates/tower-api/src/models/run_graph_node.rs +++ b/crates/tower-api/src/models/run_graph_node.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_graph_run_id.rs b/crates/tower-api/src/models/run_graph_run_id.rs index c9f629b1..01c02873 100644 --- a/crates/tower-api/src/models/run_graph_run_id.rs +++ b/crates/tower-api/src/models/run_graph_run_id.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_initiator.rs b/crates/tower-api/src/models/run_initiator.rs index 1e8625cb..5a6764bc 100644 --- a/crates/tower-api/src/models/run_initiator.rs +++ b/crates/tower-api/src/models/run_initiator.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -14,13 +14,16 @@ use serde_with::{serde_as, DefaultOnNull}; #[serde_as] #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] pub struct RunInitiator { - /// The type of initiator for this run + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "details")] + pub details: models::RunInitiatorDetails, + /// The type of initiator for this run. Null if none or unknown. #[serde(rename = "type", deserialize_with = "Option::deserialize")] pub r#type: Option, } impl RunInitiator { - pub fn new(r#type: Option) -> RunInitiator { - RunInitiator { r#type } + pub fn new(details: models::RunInitiatorDetails, r#type: Option) -> RunInitiator { + RunInitiator { details, r#type } } } diff --git a/crates/tower-api/src/models/run_initiator_details.rs b/crates/tower-api/src/models/run_initiator_details.rs new file mode 100644 index 00000000..f269868f --- /dev/null +++ b/crates/tower-api/src/models/run_initiator_details.rs @@ -0,0 +1,28 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +/// RunInitiatorDetails : Additional information about the initiator of a run. +#[serde_as] +/// Additional information about the initiator of a run. +#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] +#[serde(untagged)] +pub enum RunInitiatorDetails { + ScheduleRunInitiatorDetails(models::ScheduleRunInitiatorDetails), + RunRunInitiatorDetails(models::RunRunInitiatorDetails), +} + +impl Default for RunInitiatorDetails { + fn default() -> Self { + Self::ScheduleRunInitiatorDetails(Default::default()) + } +} diff --git a/crates/tower-api/src/models/run_log_line.rs b/crates/tower-api/src/models/run_log_line.rs index 5821fd05..a2e48743 100644 --- a/crates/tower-api/src/models/run_log_line.rs +++ b/crates/tower-api/src/models/run_log_line.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -26,7 +26,7 @@ pub struct RunLogLine { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "line_num")] pub line_num: i64, - /// This property is deprecated. Please use content instead. + /// This property is deprecated. Use content instead. #[serde(rename = "message", skip_serializing_if = "Option::is_none")] pub message: Option, /// Timestamp of the log line. @@ -37,7 +37,7 @@ pub struct RunLogLine { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "run_id")] pub run_id: String, - /// This property is deprecated. Please use reported_at instead. + /// This property is deprecated. Use reported_at instead. #[serde(rename = "timestamp", skip_serializing_if = "Option::is_none")] pub timestamp: Option, } diff --git a/crates/tower-api/src/models/run_parameter.rs b/crates/tower-api/src/models/run_parameter.rs index 9d724d7f..7e9164d4 100644 --- a/crates/tower-api/src/models/run_parameter.rs +++ b/crates/tower-api/src/models/run_parameter.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_results.rs b/crates/tower-api/src/models/run_results.rs index 4f400db2..1c3bf7c2 100644 --- a/crates/tower-api/src/models/run_results.rs +++ b/crates/tower-api/src/models/run_results.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_run_initiator_details.rs b/crates/tower-api/src/models/run_run_initiator_details.rs new file mode 100644 index 00000000..9ea88ae3 --- /dev/null +++ b/crates/tower-api/src/models/run_run_initiator_details.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct RunRunInitiatorDetails { + /// The name of the app that initiated this run, if type is 'tower_run' + #[serde(rename = "run_app_name", skip_serializing_if = "Option::is_none")] + pub run_app_name: Option, + /// The number of the run that initaited this run, if type is 'tower_run' + #[serde(rename = "run_number", skip_serializing_if = "Option::is_none")] + pub run_number: Option, +} + +impl RunRunInitiatorDetails { + pub fn new() -> RunRunInitiatorDetails { + RunRunInitiatorDetails { + run_app_name: None, + run_number: None, + } + } +} diff --git a/crates/tower-api/src/models/run_statistics.rs b/crates/tower-api/src/models/run_statistics.rs index 88f3f946..179ec833 100644 --- a/crates/tower-api/src/models/run_statistics.rs +++ b/crates/tower-api/src/models/run_statistics.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/run_timeseries_point.rs b/crates/tower-api/src/models/run_timeseries_point.rs index 1f99b06c..3dfb8677 100644 --- a/crates/tower-api/src/models/run_timeseries_point.rs +++ b/crates/tower-api/src/models/run_timeseries_point.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/runner.rs b/crates/tower-api/src/models/runner.rs index e894100a..ef57c86d 100644 --- a/crates/tower-api/src/models/runner.rs +++ b/crates/tower-api/src/models/runner.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/runner_credentials.rs b/crates/tower-api/src/models/runner_credentials.rs index 0efff3f1..cae80f25 100644 --- a/crates/tower-api/src/models/runner_credentials.rs +++ b/crates/tower-api/src/models/runner_credentials.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/schedule.rs b/crates/tower-api/src/models/schedule.rs index ead43bd7..db22c0da 100644 --- a/crates/tower-api/src/models/schedule.rs +++ b/crates/tower-api/src/models/schedule.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -18,6 +18,10 @@ pub struct Schedule { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "app_name")] pub app_name: String, + /// The status of the app + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "app_status")] + pub app_status: AppStatus, /// The specific app version to run, or null for the default version #[serde(rename = "app_version", skip_serializing_if = "Option::is_none")] pub app_version: Option, @@ -37,6 +41,14 @@ pub struct Schedule { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "id")] pub id: String, + /// The name of this schedule + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, + /// The policy for handling overlapping runs + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "overlap_policy")] + pub overlap_policy: OverlapPolicy, /// The parameters to pass when running the app #[serde(rename = "parameters", skip_serializing_if = "Option::is_none")] pub parameters: Option>, @@ -53,26 +65,91 @@ pub struct Schedule { impl Schedule { pub fn new( app_name: String, + app_status: AppStatus, created_at: String, cron: String, environment: String, id: String, + name: String, + overlap_policy: OverlapPolicy, status: Status, updated_at: String, ) -> Schedule { Schedule { app_name, + app_status, app_version: None, created_at, cron, environment, id, + name, + overlap_policy, parameters: None, status, updated_at, } } } +/// The status of the app +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum AppStatus { + #[serde(rename = "active")] + Active, + #[serde(rename = "disabled")] + Disabled, +} + +impl Default for AppStatus { + fn default() -> AppStatus { + Self::Active + } +} + +impl<'de> Deserialize<'de> for AppStatus { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "active" => Ok(Self::Active), + "disabled" => Ok(Self::Disabled), + _ => Err(serde::de::Error::unknown_variant( + &s, + &["active", "disabled"], + )), + } + } +} +/// The policy for handling overlapping runs +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum OverlapPolicy { + #[serde(rename = "allow")] + Allow, + #[serde(rename = "skip")] + Skip, +} + +impl Default for OverlapPolicy { + fn default() -> OverlapPolicy { + Self::Allow + } +} + +impl<'de> Deserialize<'de> for OverlapPolicy { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "allow" => Ok(Self::Allow), + "skip" => Ok(Self::Skip), + _ => Err(serde::de::Error::unknown_variant(&s, &["allow", "skip"])), + } + } +} /// The status of the schedule #[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] pub enum Status { diff --git a/crates/tower-api/src/models/schedule_run_initiator_details.rs b/crates/tower-api/src/models/schedule_run_initiator_details.rs new file mode 100644 index 00000000..111bb75a --- /dev/null +++ b/crates/tower-api/src/models/schedule_run_initiator_details.rs @@ -0,0 +1,28 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct ScheduleRunInitiatorDetails { + /// The name of the schedule that initiated this run, if type is 'tower_schedule' + #[serde(rename = "schedule_name", skip_serializing_if = "Option::is_none")] + pub schedule_name: Option, +} + +impl ScheduleRunInitiatorDetails { + pub fn new() -> ScheduleRunInitiatorDetails { + ScheduleRunInitiatorDetails { + schedule_name: None, + } + } +} diff --git a/crates/tower-api/src/models/search_runs_response.rs b/crates/tower-api/src/models/search_runs_response.rs index 66b96b8f..7b993386 100644 --- a/crates/tower-api/src/models/search_runs_response.rs +++ b/crates/tower-api/src/models/search_runs_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/secret.rs b/crates/tower-api/src/models/secret.rs index fb31ea0a..bf12b88f 100644 --- a/crates/tower-api/src/models/secret.rs +++ b/crates/tower-api/src/models/secret.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/server_sent_events_inner.rs b/crates/tower-api/src/models/server_sent_events_inner.rs new file mode 100644 index 00000000..1a4794e4 --- /dev/null +++ b/crates/tower-api/src/models/server_sent_events_inner.rs @@ -0,0 +1,51 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] +#[serde(untagged)] +pub enum ServerSentEventsInner { + EventAlert(models::EventAlert), + EventError(models::EventError), +} + +impl Default for ServerSentEventsInner { + fn default() -> Self { + Self::EventAlert(Default::default()) + } +} +/// The event name. +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Event { + #[serde(rename = "error")] + Error, +} + +impl Default for Event { + fn default() -> Event { + Self::Error + } +} + +impl<'de> Deserialize<'de> for Event { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "error" => Ok(Self::Error), + _ => Err(serde::de::Error::unknown_variant(&s, &["error"])), + } + } +} diff --git a/crates/tower-api/src/models/server_sent_events_inner_1.rs b/crates/tower-api/src/models/server_sent_events_inner_1.rs new file mode 100644 index 00000000..a2b2c568 --- /dev/null +++ b/crates/tower-api/src/models/server_sent_events_inner_1.rs @@ -0,0 +1,51 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] +#[serde(untagged)] +pub enum ServerSentEventsInner1 { + EventLog(models::EventLog), + EventWarning(models::EventWarning), +} + +impl Default for ServerSentEventsInner1 { + fn default() -> Self { + Self::EventLog(Default::default()) + } +} +/// The event name. +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Event { + #[serde(rename = "warning")] + Warning, +} + +impl Default for Event { + fn default() -> Event { + Self::Warning + } +} + +impl<'de> Deserialize<'de> for Event { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "warning" => Ok(Self::Warning), + _ => Err(serde::de::Error::unknown_variant(&s, &["warning"])), + } + } +} diff --git a/crates/tower-api/src/models/server_sent_events_inner_2.rs b/crates/tower-api/src/models/server_sent_events_inner_2.rs new file mode 100644 index 00000000..04624679 --- /dev/null +++ b/crates/tower-api/src/models/server_sent_events_inner_2.rs @@ -0,0 +1,51 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] +#[serde(untagged)] +pub enum ServerSentEventsInner2 { + EventShouldertap(models::EventShouldertap), + EventWarning(models::EventWarning), +} + +impl Default for ServerSentEventsInner2 { + fn default() -> Self { + Self::EventShouldertap(Default::default()) + } +} +/// The event name. +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Event { + #[serde(rename = "warning")] + Warning, +} + +impl Default for Event { + fn default() -> Event { + Self::Warning + } +} + +impl<'de> Deserialize<'de> for Event { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "warning" => Ok(Self::Warning), + _ => Err(serde::de::Error::unknown_variant(&s, &["warning"])), + } + } +} diff --git a/crates/tower-api/src/models/session.rs b/crates/tower-api/src/models/session.rs index f925e1f4..7adcfa55 100644 --- a/crates/tower-api/src/models/session.rs +++ b/crates/tower-api/src/models/session.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/shoulder_tap.rs b/crates/tower-api/src/models/shoulder_tap.rs new file mode 100644 index 00000000..5badb842 --- /dev/null +++ b/crates/tower-api/src/models/shoulder_tap.rs @@ -0,0 +1,55 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct ShoulderTap { + /// Account ID that owns the resource. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "account_id")] + pub account_id: String, + /// Event type in format resource.changed (e.g., apps.changed, runs.changed). + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "event_type")] + pub event_type: String, + /// Unique identifier of the resource. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "resource_id")] + pub resource_id: String, + /// Type of resource (apps, runs, schedules, secrets, environments, catalogs). + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "resource_type")] + pub resource_type: String, + /// Timestamp when the event occurred. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "timestamp")] + pub timestamp: String, +} + +impl ShoulderTap { + pub fn new( + account_id: String, + event_type: String, + resource_id: String, + resource_type: String, + timestamp: String, + ) -> ShoulderTap { + ShoulderTap { + account_id, + event_type, + resource_id, + resource_type, + timestamp, + } + } +} diff --git a/crates/tower-api/src/models/sse_warning.rs b/crates/tower-api/src/models/sse_warning.rs index aafdf443..f2b9e64e 100644 --- a/crates/tower-api/src/models/sse_warning.rs +++ b/crates/tower-api/src/models/sse_warning.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/statistics_settings.rs b/crates/tower-api/src/models/statistics_settings.rs index c6fd93ff..815bd280 100644 --- a/crates/tower-api/src/models/statistics_settings.rs +++ b/crates/tower-api/src/models/statistics_settings.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/stream_alerts_200_response_inner.rs b/crates/tower-api/src/models/stream_alerts_200_response_inner.rs index 39372a4d..77c3c09e 100644 --- a/crates/tower-api/src/models/stream_alerts_200_response_inner.rs +++ b/crates/tower-api/src/models/stream_alerts_200_response_inner.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.28 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/stream_run_logs_200_response_inner.rs b/crates/tower-api/src/models/stream_run_logs_200_response_inner.rs index e56428d2..5e332f92 100644 --- a/crates/tower-api/src/models/stream_run_logs_200_response_inner.rs +++ b/crates/tower-api/src/models/stream_run_logs_200_response_inner.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.28 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/stream_shouldertaps_200_response_inner.rs b/crates/tower-api/src/models/stream_shouldertaps_200_response_inner.rs new file mode 100644 index 00000000..bdc844a3 --- /dev/null +++ b/crates/tower-api/src/models/stream_shouldertaps_200_response_inner.rs @@ -0,0 +1,51 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.28 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] +#[serde(untagged)] +pub enum StreamShouldertaps200ResponseInner { + EventShouldertap(models::EventShouldertap), + EventWarning(models::EventWarning), +} + +impl Default for StreamShouldertaps200ResponseInner { + fn default() -> Self { + Self::EventShouldertap(Default::default()) + } +} +/// The event name. +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Event { + #[serde(rename = "warning")] + Warning, +} + +impl Default for Event { + fn default() -> Event { + Self::Warning + } +} + +impl<'de> Deserialize<'de> for Event { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "warning" => Ok(Self::Warning), + _ => Err(serde::de::Error::unknown_variant(&s, &["warning"])), + } + } +} diff --git a/crates/tower-api/src/models/team.rs b/crates/tower-api/src/models/team.rs index 185e066d..cf47722f 100644 --- a/crates/tower-api/src/models/team.rs +++ b/crates/tower-api/src/models/team.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -17,7 +17,7 @@ pub struct Team { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "name")] pub name: String, - /// This property is deprecated. Please use name instead. + /// This property is deprecated. Use name instead. #[serde(rename = "slug", skip_serializing_if = "Option::is_none")] pub slug: Option, #[serde(rename = "token", skip_serializing_if = "Option::is_none")] diff --git a/crates/tower-api/src/models/team_invitation.rs b/crates/tower-api/src/models/team_invitation.rs index 48118b7d..3c724374 100644 --- a/crates/tower-api/src/models/team_invitation.rs +++ b/crates/tower-api/src/models/team_invitation.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -20,9 +20,21 @@ pub struct TeamInvitation { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "invitation_sent_at")] pub invitation_sent_at: String, + /// The name of the organization the user will move to if they accept this invitation + #[serde( + rename = "target_organization_name", + skip_serializing_if = "Option::is_none" + )] + pub target_organization_name: Option, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "team")] pub team: models::Team, + /// Indicates if accepting this invitation will move the user to a different organization + #[serde( + rename = "will_change_organization", + skip_serializing_if = "Option::is_none" + )] + pub will_change_organization: Option, } impl TeamInvitation { @@ -30,7 +42,9 @@ impl TeamInvitation { TeamInvitation { email, invitation_sent_at, + target_organization_name: None, team, + will_change_organization: None, } } } diff --git a/crates/tower-api/src/models/team_membership.rs b/crates/tower-api/src/models/team_membership.rs new file mode 100644 index 00000000..478a4849 --- /dev/null +++ b/crates/tower-api/src/models/team_membership.rs @@ -0,0 +1,63 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct TeamMembership { + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "role")] + pub role: Role, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "team")] + pub team: models::Team, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "user")] + pub user: models::User, +} + +impl TeamMembership { + pub fn new(role: Role, team: models::Team, user: models::User) -> TeamMembership { + TeamMembership { role, team, user } + } +} +/// +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Role { + #[serde(rename = "admin")] + Admin, + #[serde(rename = "developer")] + Developer, +} + +impl Default for Role { + fn default() -> Role { + Self::Admin + } +} + +impl<'de> Deserialize<'de> for Role { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "admin" => Ok(Self::Admin), + "developer" => Ok(Self::Developer), + _ => Err(serde::de::Error::unknown_variant( + &s, + &["admin", "developer"], + )), + } + } +} diff --git a/crates/tower-api/src/models/test_webhook_response.rs b/crates/tower-api/src/models/test_webhook_response.rs new file mode 100644 index 00000000..9ac0d341 --- /dev/null +++ b/crates/tower-api/src/models/test_webhook_response.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct TestWebhookResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhook")] + pub webhook: models::Webhook, +} + +impl TestWebhookResponse { + pub fn new(webhook: models::Webhook) -> TestWebhookResponse { + TestWebhookResponse { + schema: None, + webhook, + } + } +} diff --git a/crates/tower-api/src/models/token.rs b/crates/tower-api/src/models/token.rs index 9b1f56b0..aaaa1741 100644 --- a/crates/tower-api/src/models/token.rs +++ b/crates/tower-api/src/models/token.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -14,13 +14,24 @@ use serde_with::{serde_as, DefaultOnNull}; #[serde_as] #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] pub struct Token { + /// The access token to use when authenticating API requests with Tower. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "access_token")] + pub access_token: String, #[serde_as(as = "DefaultOnNull")] #[serde(rename = "jwt")] pub jwt: String, + /// The refresh token to use when refreshing an expired access token. For security reasons, refresh tokens should only be transmitted over secure channels and never logged or stored in plaintext. It will only be returned upon initial authentication or when explicitly refreshing the access token. + #[serde(rename = "refresh_token", skip_serializing_if = "Option::is_none")] + pub refresh_token: Option, } impl Token { - pub fn new(jwt: String) -> Token { - Token { jwt } + pub fn new(access_token: String, jwt: String) -> Token { + Token { + access_token, + jwt, + refresh_token: None, + } } } diff --git a/crates/tower-api/src/models/unverified_authenticator.rs b/crates/tower-api/src/models/unverified_authenticator.rs index be1b001c..1427188f 100644 --- a/crates/tower-api/src/models/unverified_authenticator.rs +++ b/crates/tower-api/src/models/unverified_authenticator.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_account_params.rs b/crates/tower-api/src/models/update_account_params.rs index c5e1e967..274302f7 100644 --- a/crates/tower-api/src/models/update_account_params.rs +++ b/crates/tower-api/src/models/update_account_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_account_response.rs b/crates/tower-api/src/models/update_account_response.rs index 53e8f2db..78643cb5 100644 --- a/crates/tower-api/src/models/update_account_response.rs +++ b/crates/tower-api/src/models/update_account_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_app_params.rs b/crates/tower-api/src/models/update_app_params.rs index 0c59fc2a..08f099f1 100644 --- a/crates/tower-api/src/models/update_app_params.rs +++ b/crates/tower-api/src/models/update_app_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -33,6 +33,22 @@ pub struct UpdateAppParams { skip_serializing_if = "Option::is_none" )] pub is_externally_accessible: Option>, + /// The amount of time in seconds that runs of this app can stay in pending state before being marked as failed. + #[serde( + rename = "pending_timeout", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub pending_timeout: Option>, + /// The amount of time in seconds that runs of this app can stay in running state before being marked as failed. + #[serde( + rename = "running_timeout", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub running_timeout: Option>, /// New status for the App #[serde( rename = "status", @@ -57,6 +73,8 @@ impl UpdateAppParams { schema: None, description: None, is_externally_accessible: None, + pending_timeout: None, + running_timeout: None, status: None, subdomain: None, } diff --git a/crates/tower-api/src/models/update_app_response.rs b/crates/tower-api/src/models/update_app_response.rs index e4c0f004..07ac2631 100644 --- a/crates/tower-api/src/models/update_app_response.rs +++ b/crates/tower-api/src/models/update_app_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -17,13 +17,21 @@ pub struct UpdateAppResponse { /// A URL to the JSON Schema for this object. #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] pub schema: Option, + /// Deprecated field. Use 'app' instead. #[serde_as(as = "DefaultOnNull")] #[serde(rename = "App")] + pub deprecated_app: models::App, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "app")] pub app: models::App, } impl UpdateAppResponse { - pub fn new(app: models::App) -> UpdateAppResponse { - UpdateAppResponse { schema: None, app } + pub fn new(deprecated_app: models::App, app: models::App) -> UpdateAppResponse { + UpdateAppResponse { + schema: None, + deprecated_app, + app, + } } } diff --git a/crates/tower-api/src/models/update_catalog_params.rs b/crates/tower-api/src/models/update_catalog_params.rs index 6f3792f0..113e73dc 100644 --- a/crates/tower-api/src/models/update_catalog_params.rs +++ b/crates/tower-api/src/models/update_catalog_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_catalog_response.rs b/crates/tower-api/src/models/update_catalog_response.rs index e646522b..93667482 100644 --- a/crates/tower-api/src/models/update_catalog_response.rs +++ b/crates/tower-api/src/models/update_catalog_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_email_preferences_body.rs b/crates/tower-api/src/models/update_email_preferences_body.rs index 580312ea..4130765a 100644 --- a/crates/tower-api/src/models/update_email_preferences_body.rs +++ b/crates/tower-api/src/models/update_email_preferences_body.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_environment_params.rs b/crates/tower-api/src/models/update_environment_params.rs index 9bfc2f01..39c3e8dc 100644 --- a/crates/tower-api/src/models/update_environment_params.rs +++ b/crates/tower-api/src/models/update_environment_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_environment_response.rs b/crates/tower-api/src/models/update_environment_response.rs index d2765a6c..f22feb5d 100644 --- a/crates/tower-api/src/models/update_environment_response.rs +++ b/crates/tower-api/src/models/update_environment_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_my_team_invitation_params.rs b/crates/tower-api/src/models/update_my_team_invitation_params.rs index b76dbcd3..33a5efe2 100644 --- a/crates/tower-api/src/models/update_my_team_invitation_params.rs +++ b/crates/tower-api/src/models/update_my_team_invitation_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_my_team_invitation_response.rs b/crates/tower-api/src/models/update_my_team_invitation_response.rs index aa2ccfed..99e08916 100644 --- a/crates/tower-api/src/models/update_my_team_invitation_response.rs +++ b/crates/tower-api/src/models/update_my_team_invitation_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_organization_params.rs b/crates/tower-api/src/models/update_organization_params.rs new file mode 100644 index 00000000..a63b9e25 --- /dev/null +++ b/crates/tower-api/src/models/update_organization_params.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateOrganizationParams { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The name of the organization to update. This is optional, if you supply null it will not update the organization name. + #[serde(rename = "name", skip_serializing_if = "Option::is_none")] + pub name: Option, +} + +impl UpdateOrganizationParams { + pub fn new() -> UpdateOrganizationParams { + UpdateOrganizationParams { + schema: None, + name: None, + } + } +} diff --git a/crates/tower-api/src/models/update_organization_response.rs b/crates/tower-api/src/models/update_organization_response.rs new file mode 100644 index 00000000..3e09bbbe --- /dev/null +++ b/crates/tower-api/src/models/update_organization_response.rs @@ -0,0 +1,33 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateOrganizationResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The organization that was just updated + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "organization")] + pub organization: models::Organization, +} + +impl UpdateOrganizationResponse { + pub fn new(organization: models::Organization) -> UpdateOrganizationResponse { + UpdateOrganizationResponse { + schema: None, + organization, + } + } +} diff --git a/crates/tower-api/src/models/update_password_reset_params.rs b/crates/tower-api/src/models/update_password_reset_params.rs index f965275e..8da2c477 100644 --- a/crates/tower-api/src/models/update_password_reset_params.rs +++ b/crates/tower-api/src/models/update_password_reset_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_password_reset_response.rs b/crates/tower-api/src/models/update_password_reset_response.rs index f8b59dfa..a70ae3bc 100644 --- a/crates/tower-api/src/models/update_password_reset_response.rs +++ b/crates/tower-api/src/models/update_password_reset_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_plan_params.rs b/crates/tower-api/src/models/update_plan_params.rs index ad640788..646390ac 100644 --- a/crates/tower-api/src/models/update_plan_params.rs +++ b/crates/tower-api/src/models/update_plan_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -21,9 +21,6 @@ pub struct UpdatePlanParams { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "base_plan_name")] pub base_plan_name: String, - /// Optional expiration date for the plan. - #[serde(rename = "end_at", skip_serializing_if = "Option::is_none")] - pub end_at: Option, } impl UpdatePlanParams { @@ -31,7 +28,6 @@ impl UpdatePlanParams { UpdatePlanParams { schema: None, base_plan_name, - end_at: None, } } } diff --git a/crates/tower-api/src/models/update_plan_response.rs b/crates/tower-api/src/models/update_plan_response.rs index 538ae542..6c0a299d 100644 --- a/crates/tower-api/src/models/update_plan_response.rs +++ b/crates/tower-api/src/models/update_plan_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_schedule_params.rs b/crates/tower-api/src/models/update_schedule_params.rs index 24424de7..374f14b2 100644 --- a/crates/tower-api/src/models/update_schedule_params.rs +++ b/crates/tower-api/src/models/update_schedule_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -31,6 +31,17 @@ pub struct UpdateScheduleParams { /// The environment to run the app in #[serde(rename = "environment", skip_serializing_if = "Option::is_none")] pub environment: Option, + /// The name for this schedule. Must be unique per team. + #[serde(rename = "name", deserialize_with = "Option::deserialize")] + pub name: Option, + /// The overlap policy for the schedule + #[serde( + rename = "overlap_policy", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub overlap_policy: Option>, /// Parameters to pass when running the app #[serde(rename = "parameters", skip_serializing_if = "Option::is_none")] pub parameters: Option>, @@ -45,17 +56,47 @@ pub struct UpdateScheduleParams { } impl UpdateScheduleParams { - pub fn new() -> UpdateScheduleParams { + pub fn new(name: Option) -> UpdateScheduleParams { UpdateScheduleParams { schema: None, app_version: None, cron: None, environment: None, + name, + overlap_policy: None, parameters: None, status: None, } } } +/// The overlap policy for the schedule +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum OverlapPolicy { + #[serde(rename = "skip")] + Skip, + #[serde(rename = "allow")] + Allow, +} + +impl Default for OverlapPolicy { + fn default() -> OverlapPolicy { + Self::Skip + } +} + +impl<'de> Deserialize<'de> for OverlapPolicy { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "skip" => Ok(Self::Skip), + "allow" => Ok(Self::Allow), + _ => Err(serde::de::Error::unknown_variant(&s, &["skip", "allow"])), + } + } +} /// The status of the schedule #[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] pub enum Status { diff --git a/crates/tower-api/src/models/update_schedule_response.rs b/crates/tower-api/src/models/update_schedule_response.rs index 910f5676..b06aa564 100644 --- a/crates/tower-api/src/models/update_schedule_response.rs +++ b/crates/tower-api/src/models/update_schedule_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_secret_params.rs b/crates/tower-api/src/models/update_secret_params.rs index 3584bdd8..2fcfd4a1 100644 --- a/crates/tower-api/src/models/update_secret_params.rs +++ b/crates/tower-api/src/models/update_secret_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_secret_response.rs b/crates/tower-api/src/models/update_secret_response.rs index 8b8703ec..0c87f8ff 100644 --- a/crates/tower-api/src/models/update_secret_response.rs +++ b/crates/tower-api/src/models/update_secret_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_team_member_params.rs b/crates/tower-api/src/models/update_team_member_params.rs new file mode 100644 index 00000000..1aa91336 --- /dev/null +++ b/crates/tower-api/src/models/update_team_member_params.rs @@ -0,0 +1,73 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateTeamMemberParams { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The email address of the team member to update + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "email")] + pub email: String, + /// The role to update the team member to + #[serde( + rename = "role", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub role: Option>, +} + +impl UpdateTeamMemberParams { + pub fn new(email: String) -> UpdateTeamMemberParams { + UpdateTeamMemberParams { + schema: None, + email, + role: None, + } + } +} +/// The role to update the team member to +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum Role { + #[serde(rename = "admin")] + Admin, + #[serde(rename = "developer")] + Developer, +} + +impl Default for Role { + fn default() -> Role { + Self::Admin + } +} + +impl<'de> Deserialize<'de> for Role { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "admin" => Ok(Self::Admin), + "developer" => Ok(Self::Developer), + _ => Err(serde::de::Error::unknown_variant( + &s, + &["admin", "developer"], + )), + } + } +} diff --git a/crates/tower-api/src/models/update_team_member_response.rs b/crates/tower-api/src/models/update_team_member_response.rs new file mode 100644 index 00000000..01855859 --- /dev/null +++ b/crates/tower-api/src/models/update_team_member_response.rs @@ -0,0 +1,33 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateTeamMemberResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The team member that was updated + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "team_member")] + pub team_member: models::TeamMembership, +} + +impl UpdateTeamMemberResponse { + pub fn new(team_member: models::TeamMembership) -> UpdateTeamMemberResponse { + UpdateTeamMemberResponse { + schema: None, + team_member, + } + } +} diff --git a/crates/tower-api/src/models/update_team_params.rs b/crates/tower-api/src/models/update_team_params.rs index c5677f4d..0132a2f1 100644 --- a/crates/tower-api/src/models/update_team_params.rs +++ b/crates/tower-api/src/models/update_team_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_team_response.rs b/crates/tower-api/src/models/update_team_response.rs index 1b8c3074..59c43750 100644 --- a/crates/tower-api/src/models/update_team_response.rs +++ b/crates/tower-api/src/models/update_team_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_user_params.rs b/crates/tower-api/src/models/update_user_params.rs index 168c7784..a2626450 100644 --- a/crates/tower-api/src/models/update_user_params.rs +++ b/crates/tower-api/src/models/update_user_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -83,6 +83,13 @@ pub struct UpdateUserParams { skip_serializing_if = "Option::is_none" )] pub password: Option>, + #[serde( + rename = "promo_code", + default, + with = "::serde_with::rust::double_option", + skip_serializing_if = "Option::is_none" + )] + pub promo_code: Option>, } impl UpdateUserParams { @@ -98,6 +105,7 @@ impl UpdateUserParams { is_subscribed_to_newsletter: None, last_name: None, password: None, + promo_code: None, } } } diff --git a/crates/tower-api/src/models/update_user_response.rs b/crates/tower-api/src/models/update_user_response.rs index bb26f7a0..f751c75a 100644 --- a/crates/tower-api/src/models/update_user_response.rs +++ b/crates/tower-api/src/models/update_user_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/update_webhook_params.rs b/crates/tower-api/src/models/update_webhook_params.rs new file mode 100644 index 00000000..1d449de0 --- /dev/null +++ b/crates/tower-api/src/models/update_webhook_params.rs @@ -0,0 +1,30 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateWebhookParams { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + /// The new name of the webhook. + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, +} + +impl UpdateWebhookParams { + pub fn new(name: String) -> UpdateWebhookParams { + UpdateWebhookParams { schema: None, name } + } +} diff --git a/crates/tower-api/src/models/update_webhook_response.rs b/crates/tower-api/src/models/update_webhook_response.rs new file mode 100644 index 00000000..3ea72f6d --- /dev/null +++ b/crates/tower-api/src/models/update_webhook_response.rs @@ -0,0 +1,32 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct UpdateWebhookResponse { + /// A URL to the JSON Schema for this object. + #[serde(rename = "$schema", skip_serializing_if = "Option::is_none")] + pub schema: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "webhook")] + pub webhook: models::Webhook, +} + +impl UpdateWebhookResponse { + pub fn new(webhook: models::Webhook) -> UpdateWebhookResponse { + UpdateWebhookResponse { + schema: None, + webhook, + } + } +} diff --git a/crates/tower-api/src/models/user.rs b/crates/tower-api/src/models/user.rs index dc4b710e..9b1e01d3 100644 --- a/crates/tower-api/src/models/user.rs +++ b/crates/tower-api/src/models/user.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ @@ -50,6 +50,9 @@ pub struct User { #[serde_as(as = "DefaultOnNull")] #[serde(rename = "profile_photo_url")] pub profile_photo_url: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "promo_code")] + pub promo_code: String, } impl User { @@ -64,6 +67,7 @@ impl User { is_subscribed_to_changelog: bool, last_name: String, profile_photo_url: String, + promo_code: String, ) -> User { User { company, @@ -77,6 +81,7 @@ impl User { is_subscribed_to_changelog, last_name, profile_photo_url, + promo_code, } } } diff --git a/crates/tower-api/src/models/verified_authenticator.rs b/crates/tower-api/src/models/verified_authenticator.rs index 789f620b..953722ae 100644 --- a/crates/tower-api/src/models/verified_authenticator.rs +++ b/crates/tower-api/src/models/verified_authenticator.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/verify_email_params.rs b/crates/tower-api/src/models/verify_email_params.rs index 5b4f1edd..d2af772a 100644 --- a/crates/tower-api/src/models/verify_email_params.rs +++ b/crates/tower-api/src/models/verify_email_params.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/verify_email_response.rs b/crates/tower-api/src/models/verify_email_response.rs index 2beda4f9..d10f282b 100644 --- a/crates/tower-api/src/models/verify_email_response.rs +++ b/crates/tower-api/src/models/verify_email_response.rs @@ -3,7 +3,7 @@ * * REST API to interact with Tower Services. * - * The version of the OpenAPI document: v0.9.9 + * The version of the OpenAPI document: v0.9.29 * Contact: hello@tower.dev * Generated by: https://openapi-generator.tech */ diff --git a/crates/tower-api/src/models/webhook.rs b/crates/tower-api/src/models/webhook.rs new file mode 100644 index 00000000..9931019e --- /dev/null +++ b/crates/tower-api/src/models/webhook.rs @@ -0,0 +1,96 @@ +/* + * Tower API + * + * REST API to interact with Tower Services. + * + * The version of the OpenAPI document: v0.9.29 + * Contact: hello@tower.dev + * Generated by: https://openapi-generator.tech + */ +use crate::models; +use serde::{Deserialize, Deserializer, Serialize}; +use serde_with::{serde_as, DefaultOnNull}; + +#[serde_as] +#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] +pub struct Webhook { + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "account_id")] + pub account_id: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "created_at")] + pub created_at: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "created_by_id")] + pub created_by_id: String, + #[serde(rename = "deleted_at", skip_serializing_if = "Option::is_none")] + pub deleted_at: Option, + #[serde(rename = "last_checked_at", deserialize_with = "Option::deserialize")] + pub last_checked_at: Option, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "name")] + pub name: String, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "state")] + pub state: State, + #[serde_as(as = "DefaultOnNull")] + #[serde(rename = "url")] + pub url: String, +} + +impl Webhook { + pub fn new( + account_id: String, + created_at: String, + created_by_id: String, + last_checked_at: Option, + name: String, + state: State, + url: String, + ) -> Webhook { + Webhook { + account_id, + created_at, + created_by_id, + deleted_at: None, + last_checked_at, + name, + state, + url, + } + } +} +/// +#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize)] +pub enum State { + #[serde(rename = "healthy")] + Healthy, + #[serde(rename = "unhealthy")] + Unhealthy, + #[serde(rename = "unknown")] + Unknown, +} + +impl Default for State { + fn default() -> State { + Self::Healthy + } +} + +impl<'de> Deserialize<'de> for State { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let s = String::deserialize(deserializer)?; + match s.to_lowercase().as_str() { + "healthy" => Ok(Self::Healthy), + "unhealthy" => Ok(Self::Unhealthy), + "unknown" => Ok(Self::Unknown), + _ => Err(serde::de::Error::unknown_variant( + &s, + &["healthy", "unhealthy", "unknown"], + )), + } + } +} diff --git a/crates/tower-cmd/src/api.rs b/crates/tower-cmd/src/api.rs index 772bfb21..3c16e854 100644 --- a/crates/tower-cmd/src/api.rs +++ b/crates/tower-cmd/src/api.rs @@ -845,13 +845,11 @@ pub async fn create_schedule( let params = tower_api::apis::default_api::CreateScheduleParams { create_schedule_params: tower_api::models::CreateScheduleParams { - schema: None, app_name: app_name.to_string(), cron: cron.to_string(), environment: Some(environment.to_string()), - app_version: None, parameters: run_parameters, - status: None, + ..Default::default() }, }; @@ -880,14 +878,11 @@ pub async fn update_schedule( }); let params = tower_api::apis::default_api::UpdateScheduleParams { - id: schedule_id.to_string(), + id_or_name: schedule_id.to_string(), update_schedule_params: tower_api::models::UpdateScheduleParams { - schema: None, cron: cron.map(|s| s.clone()), - environment: None, - app_version: None, parameters: run_parameters, - status: None, + ..Default::default() }, }; diff --git a/scripts/generate-rust-api-client.sh b/scripts/generate-rust-api-client.sh index 27712502..634f2f04 100755 --- a/scripts/generate-rust-api-client.sh +++ b/scripts/generate-rust-api-client.sh @@ -27,7 +27,7 @@ CONFIG_FILE="rust-api-client-generator-config.yaml" ARGS="generate --config ${CONFIG_FILE}" # OPENAPI_GENERATOR_VERSION is the version of the openapi-generator-cli to use. -OPENAPI_GENERATOR_VERSION="7.13.0" +OPENAPI_GENERATOR_VERSION="7.19.0" # We need to get the OpenAPI spec file into scope in the first place. curl -sL ${TOWER_URL}/v1/openapi.json -o ${BASEDIR}/openapi.json diff --git a/scripts/rust-api-client-generator-config.yaml b/scripts/rust-api-client-generator-config.yaml index 791d3784..4d122284 100644 --- a/scripts/rust-api-client-generator-config.yaml +++ b/scripts/rust-api-client-generator-config.yaml @@ -6,6 +6,7 @@ httpUserAgent: "Tower CLI" templateDir: rust-client-templates nameMappings: $schema: schema + App: deprecated_app globalProperties: modelDocs: false