From 353bb23d2919557dfc2b28a97962a604cebcec3e Mon Sep 17 00:00:00 2001 From: bchatelard Date: Fri, 24 Nov 2023 00:21:06 +0000 Subject: [PATCH] [create-pull-request] automated change --- api/v1/koyeb/.openapi-generator/FILES | 7 + api/v1/koyeb/README.md | 3 + api/v1/koyeb/api/openapi.yaml | 19290 ++++++++-------- api/v1/koyeb/api_activity.go | 66 + api/v1/koyeb/api_billing.go | 44 + api/v1/koyeb/api_credentials.go | 132 + api/v1/koyeb/api_instances.go | 22 + api/v1/koyeb/api_invite.go | 22 + api/v1/koyeb/api_logs.go | 22 + api/v1/koyeb/api_metrics.go | 22 + api/v1/koyeb/api_organization.go | 286 + .../koyeb/api_organization_confirmations.go | 22 + api/v1/koyeb/api_organization_invitations.go | 110 + api/v1/koyeb/api_organization_members.go | 44 + api/v1/koyeb/api_organization_quotas.go | 218 + api/v1/koyeb/api_payment_methods.go | 110 + api/v1/koyeb/api_profile.go | 330 + api/v1/koyeb/api_repositories.go | 66 + api/v1/koyeb/api_search.go | 22 + api/v1/koyeb/api_sessions.go | 88 + api/v1/koyeb/api_sso.go | 44 + api/v1/koyeb/api_subscriptions.go | 22 + api/v1/koyeb/api_users.go | 22 + api/v1/koyeb/client.go | 3 + api/v1/koyeb/docs/GetQuotasReply.md | 56 + api/v1/koyeb/docs/OrganizationQuotasApi.md | 77 + api/v1/koyeb/docs/Quotas.md | 290 + api/v1/koyeb/model_get_quotas_reply.go | 115 + api/v1/koyeb/model_quotas.go | 439 + api/v1/koyeb/openapi.json | 10620 +++++---- 30 files changed, 18600 insertions(+), 14014 deletions(-) create mode 100644 api/v1/koyeb/api_organization_quotas.go create mode 100644 api/v1/koyeb/docs/GetQuotasReply.md create mode 100644 api/v1/koyeb/docs/OrganizationQuotasApi.md create mode 100644 api/v1/koyeb/docs/Quotas.md create mode 100644 api/v1/koyeb/model_get_quotas_reply.go create mode 100644 api/v1/koyeb/model_quotas.go diff --git a/api/v1/koyeb/.openapi-generator/FILES b/api/v1/koyeb/.openapi-generator/FILES index 85f97486..aa3f6865 100644 --- a/api/v1/koyeb/.openapi-generator/FILES +++ b/api/v1/koyeb/.openapi-generator/FILES @@ -20,6 +20,7 @@ api_organization.go api_organization_confirmations.go api_organization_invitations.go api_organization_members.go +api_organization_quotas.go api_payment_methods.go api_profile.go api_quotas.go @@ -143,6 +144,7 @@ docs/GetOrganizationReply.md docs/GetOrganizationUsageDetailsReply.md docs/GetOrganizationUsageReply.md docs/GetPaymentMethodReply.md +docs/GetQuotasReply.md docs/GetRegionReply.md docs/GetRegionalDeploymentReply.md docs/GetSecretReply.md @@ -235,6 +237,7 @@ docs/OrganizationInvitationsApi.md docs/OrganizationMember.md docs/OrganizationMemberStatus.md docs/OrganizationMembersApi.md +docs/OrganizationQuotasApi.md docs/OrganizationStatus.md docs/PaymentMethod.md docs/PaymentMethodStatus.md @@ -246,6 +249,7 @@ docs/PrivateRegistryConfiguration.md docs/ProfileApi.md docs/PublicOrganization.md docs/PublicUser.md +docs/Quotas.md docs/QuotasApi.md docs/ReactivateOrganizationReply.md docs/RedeployReply.md @@ -421,6 +425,7 @@ model_get_organization_reply.go model_get_organization_usage_details_reply.go model_get_organization_usage_reply.go model_get_payment_method_reply.go +model_get_quotas_reply.go model_get_region_reply.go model_get_regional_deployment_reply.go model_get_secret_reply.go @@ -514,6 +519,7 @@ model_port.go model_private_registry_configuration.go model_public_organization.go model_public_user.go +model_quotas.go model_reactivate_organization_reply.go model_redeploy_reply.go model_redeploy_request_info.go @@ -593,6 +599,7 @@ test/api_metrics_test.go test/api_organization_confirmations_test.go test/api_organization_invitations_test.go test/api_organization_members_test.go +test/api_organization_quotas_test.go test/api_organization_test.go test/api_payment_methods_test.go test/api_profile_test.go diff --git a/api/v1/koyeb/README.md b/api/v1/koyeb/README.md index 5dcc1beb..b7bfea86 100644 --- a/api/v1/koyeb/README.md +++ b/api/v1/koyeb/README.md @@ -142,6 +142,7 @@ Class | Method | HTTP request | Description *OrganizationInvitationsApi* | [**ResendOrganizationInvitation**](docs/OrganizationInvitationsApi.md#resendorganizationinvitation) | **Post** /v1/organization_invitations/{id}/resend | *OrganizationMembersApi* | [**ListOrganizationMembers**](docs/OrganizationMembersApi.md#listorganizationmembers) | **Get** /v1/organization_members | List organization members *OrganizationMembersApi* | [**RemoveOrganizationMember**](docs/OrganizationMembersApi.md#removeorganizationmember) | **Delete** /v1/organization_members/{id} | Remove an organization member +*OrganizationQuotasApi* | [**GetQuotas**](docs/OrganizationQuotasApi.md#getquotas) | **Get** /v1/organizations/{organization_id}/quotas | *PaymentMethodsApi* | [**ConfirmPaymentAuthorization**](docs/PaymentMethodsApi.md#confirmpaymentauthorization) | **Post** /v1/payment_methods/{id}/confirm | Confirm payment authorization *PaymentMethodsApi* | [**CreatePaymentAuthorization**](docs/PaymentMethodsApi.md#createpaymentauthorization) | **Post** /v1/payment_methods | Create payment authorization *PaymentMethodsApi* | [**DeletePaymentMethod**](docs/PaymentMethodsApi.md#deletepaymentmethod) | **Delete** /v1/payment_methods/{id} | Delete payment method @@ -300,6 +301,7 @@ Class | Method | HTTP request | Description - [GetOrganizationUsageDetailsReply](docs/GetOrganizationUsageDetailsReply.md) - [GetOrganizationUsageReply](docs/GetOrganizationUsageReply.md) - [GetPaymentMethodReply](docs/GetPaymentMethodReply.md) + - [GetQuotasReply](docs/GetQuotasReply.md) - [GetRegionReply](docs/GetRegionReply.md) - [GetRegionalDeploymentReply](docs/GetRegionalDeploymentReply.md) - [GetSecretReply](docs/GetSecretReply.md) @@ -393,6 +395,7 @@ Class | Method | HTTP request | Description - [PrivateRegistryConfiguration](docs/PrivateRegistryConfiguration.md) - [PublicOrganization](docs/PublicOrganization.md) - [PublicUser](docs/PublicUser.md) + - [Quotas](docs/Quotas.md) - [ReactivateOrganizationReply](docs/ReactivateOrganizationReply.md) - [RedeployReply](docs/RedeployReply.md) - [RedeployRequestInfo](docs/RedeployRequestInfo.md) diff --git a/api/v1/koyeb/api/openapi.yaml b/api/v1/koyeb/api/openapi.yaml index 5e51578b..5f97accc 100644 --- a/api/v1/koyeb/api/openapi.yaml +++ b/api/v1/koyeb/api/openapi.yaml @@ -220,6 +220,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -233,6 +239,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -282,6 +294,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -295,6 +313,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -303,21 +327,36 @@ paths: description: An unexpected error response. tags: - activity - /v1/quotas/capacity: - post: - operationId: ReviewOrganizationCapacity - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/ReviewOrganizationCapacityRequest' - required: true + /v1/organization_members: + get: + operationId: ListOrganizationMembers + parameters: + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Filter for an organization + in: query + name: organization_id + schema: + type: string + - description: (Optional) Filter for an user + in: query + name: user_id + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ReviewOrganizationCapacityReply' + $ref: '#/components/schemas/ListOrganizationMembersReply' description: A successful response. "400": content: @@ -356,51 +395,16 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Review Organization Capacity + summary: List organization members tags: - - Quotas - x-codegen-request-body-name: body - /v1/instance_events: - get: - operationId: ListInstanceEvents + - OrganizationMembers + /v1/organization_members/{id}: + delete: + operationId: RemoveOrganizationMember parameters: - - description: (Optional) Filter on instance id - in: query - name: instance_id - schema: - type: string - - description: (Optional) Filter on list of instance id - explode: true - in: query - name: instance_ids - schema: - items: - type: string - type: array - style: form - - description: (Optional) Filter on instance event types - explode: true - in: query - name: types - schema: - items: - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order + - in: path + name: id + required: true schema: type: string responses: @@ -408,7 +412,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListInstanceEventsReply' + $ref: '#/components/schemas/RemoveOrganizationMemberReply' description: A successful response. "400": content: @@ -447,77 +451,27 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Instance events + summary: Remove an organization member tags: - - Instances - /v1/instances: + - OrganizationMembers + /v1/account/activities: get: - operationId: ListInstances + operationId: GetAccountActivities parameters: - - description: (Optional) Filter on application id - in: query - name: app_id - schema: - type: string - - description: (Optional) Filter on service id - in: query - name: service_id - schema: - type: string - - description: (Optional) Filter on deployment id - in: query - name: deployment_id - schema: - type: string - - description: (Optional) Filter on regional deployment id - in: query - name: regional_deployment_id - schema: - type: string - - description: (Optional) Filter on allocation id - in: query - name: allocation_id - schema: - type: string - - description: (Optional) Filter on instance statuses - explode: true - in: query - name: statuses - schema: - items: - enum: - - ALLOCATING - - STARTING - - HEALTHY - - UNHEALTHY - - STOPPING - - STOPPED - - ERROR - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query + - in: query name: limit schema: type: string - - description: (Optional) The offset in the list of item to return - in: query + - in: query name: offset schema: type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListInstancesReply' + $ref: '#/components/schemas/ActivityList' description: A successful response. "400": content: @@ -556,25 +510,23 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Instances tags: - - Instances - /v1/instances/{id}: - get: - operationId: GetInstance - parameters: - - description: The id of the instance - in: path - name: id + - activity + /v1/account/invite: + post: + operationId: CreateInvite + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/InviteUserRequest' required: true - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetInstanceReply' + $ref: '#/components/schemas/Empty' description: A successful response. "400": content: @@ -613,41 +565,27 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get Instance tags: - - Instances - /v1/service_events: + - invite + x-codegen-request-body-name: body + /v1/account/oauth: get: - operationId: ListServiceEvents + operationId: GetOAuthOptions parameters: - - description: (Optional) Filter on service id - in: query - name: service_id - schema: - type: string - - description: (Optional) Filter on service event types - explode: true - in: query - name: types - schema: - items: - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return + - description: Which authentication flow is being initiated in: query - name: offset + name: action schema: + default: signin + enum: + - signin + - signup + - register type: string - - description: (Optional) Sorts the list in the ascending or the descending - order + - description: A small (limited to 400 characters) string of arbitrary metadata + which will be encoded in the state in: query - name: order + name: metadata schema: type: string responses: @@ -655,7 +593,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListServiceEventsReply' + $ref: '#/components/schemas/GetOAuthOptionsReply' description: A successful response. "400": content: @@ -694,53 +632,29 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Service events + summary: Get OAuth Providers tags: - - Services - /v1/services: - get: - operationId: ListServices + - profile + post: + operationId: OAuthCallback parameters: - - description: (Optional) The id of the app - in: query - name: app_id - schema: - type: string - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) A filter for name - in: query - name: name + - description: Seon Fingerprint + in: header + name: seon-fp schema: type: string - - description: (Optional) Filter on service types - explode: true - in: query - name: types - schema: - items: - enum: - - INVALID_TYPE - - WEB - - WORKER - - DATABASE - type: string - type: array - style: form + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/OAuthCallbackRequest' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListServicesReply' + $ref: '#/components/schemas/OAuthCallbackReply' description: A successful response. "400": content: @@ -779,29 +693,19 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Services + summary: Authenticate using OAuth tags: - - Services - post: - operationId: CreateService - parameters: - - description: If set only run validation - in: query - name: dry_run - schema: - type: boolean - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateService' - required: true + - profile + x-codegen-request-body-name: body + /v1/account/organization: + get: + operationId: GetCurrentOrganization responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateServiceReply' + $ref: '#/components/schemas/GetOrganizationReply' description: A successful response. "400": content: @@ -840,27 +744,43 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Create Service tags: - - Services - x-codegen-request-body-name: service - /v1/services/{id}: - delete: - description: Service deletion is allowed for all status. - operationId: DeleteService + - profile + /v1/account/organization_invitations: + get: + operationId: ListUserOrganizationInvitations parameters: - - description: The id of the entity to delete - in: path - name: id - required: true + - description: (Optional) The number of items to return + in: query + name: limit schema: type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Filter on organization invitation statuses + explode: true + in: query + name: statuses + schema: + items: + enum: + - INVALID + - PENDING + - ACCEPTED + - REFUSED + - EXPIRED + type: string + type: array + style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteServiceReply' + $ref: '#/components/schemas/ListUserOrganizationInvitationsReply' description: A successful response. "400": content: @@ -899,13 +819,13 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Delete Service tags: - - Services + - profile + /v1/account/organization_invitations/{id}: get: - operationId: GetService + operationId: GetUserOrganizationInvitation parameters: - - description: The id of the Service + - description: The id of the organization invitation to get in: path name: id required: true @@ -916,7 +836,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/GetServiceReply' + $ref: '#/components/schemas/GetUserOrganizationInvitationReply' description: A successful response. "400": content: @@ -955,35 +875,30 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get Service tags: - - Services - patch: - operationId: UpdateService2 + - profile + /v1/account/organization_invitations/{id}/accept: + post: + operationId: AcceptOrganizationInvitation parameters: - - description: The id of the entity to update + - description: The id of the organization invitation to accept in: path name: id required: true schema: type: string - - description: "If set, run validation and check that the service exists" - in: query - name: dry_run - schema: - type: boolean requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpdateService' + type: object required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateServiceReply' + $ref: '#/components/schemas/AcceptOrganizationInvitationReply' description: A successful response. "400": content: @@ -1022,36 +937,31 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update Service tags: - - Services - x-codegen-request-body-name: service - put: - operationId: UpdateService + - profile + x-codegen-request-body-name: body + /v1/account/organization_invitations/{id}/decline: + post: + operationId: DeclineOrganizationInvitation parameters: - - description: The id of the entity to update + - description: The id of the organization invitation to decline in: path name: id required: true schema: type: string - - description: "If set, run validation and check that the service exists" - in: query - name: dry_run - schema: - type: boolean requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpdateService' + type: object required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateServiceReply' + $ref: '#/components/schemas/DeclineOrganizationInvitationReply' description: A successful response. "400": content: @@ -1090,33 +1000,18 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update Service tags: - - Services - x-codegen-request-body-name: service - /v1/services/{id}/pause: - post: - description: |- - Service pause action is allowed for the following status: - - starting - - healthy - - degraded - - unhealthy - - resuming - operationId: PauseService - parameters: - - description: The id of the service to pause. - in: path - name: id - required: true - schema: - type: string + - profile + x-codegen-request-body-name: body + /v1/account/profile: + get: + operationId: GetCurrentUser responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/PauseServiceReply' + $ref: '#/components/schemas/UserReply' description: A successful response. "400": content: @@ -1155,30 +1050,27 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Pause Service tags: - - Services - /v1/services/{id}/redeploy: - post: - operationId: ReDeploy + - profile + patch: + operationId: UpdateUser2 parameters: - - in: path - name: id - required: true + - in: query + name: update_mask schema: type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/RedeployRequest.Info' + $ref: '#/components/schemas/UpdateUserRequest.UserUpdateBody' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/RedeployReply' + $ref: '#/components/schemas/UserReply' description: A successful response. "400": content: @@ -1217,29 +1109,28 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: ReDeploy Service tags: - - Services - x-codegen-request-body-name: info - /v1/services/{id}/resume: - post: - description: |- - Service resume action is allowed for the following status: - - paused - operationId: ResumeService + - profile + x-codegen-request-body-name: user + put: + operationId: UpdateUser parameters: - - description: The id of the service to pause. - in: path - name: id - required: true + - in: query + name: update_mask schema: type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/UpdateUserRequest.UserUpdateBody' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ResumeServiceReply' + $ref: '#/components/schemas/UserReply' description: A successful response. "400": content: @@ -1278,49 +1169,24 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Resume Service tags: - - Services - /v1/deployment_events: - get: - operationId: ListDeploymentEvents - parameters: - - description: (Optional) Filter on deployment id - in: query - name: deployment_id - schema: - type: string - - description: (Optional) Filter on deployment event types - explode: true - in: query - name: types - schema: - items: - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order - schema: - type: string + - profile + x-codegen-request-body-name: user + /v1/account/resend_validation: + post: + operationId: ResendEmailValidation + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/ResendEmailValidationRequest' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListDeploymentEventsReply' + $ref: '#/components/schemas/ResendEmailValidationReply' description: A successful response. "400": content: @@ -1359,63 +1225,24 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Deployment events tags: - - Deployments - /v1/deployments: - get: - operationId: ListDeployments - parameters: - - description: (Optional) Filter on application id - in: query - name: app_id - schema: - type: string - - description: (Optional) Filter on service id - in: query - name: service_id - schema: - type: string - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Filter on statuses - explode: true - in: query - name: statuses - schema: - items: - enum: - - PENDING - - PROVISIONING - - SCHEDULED - - CANCELING - - CANCELED - - ALLOCATING - - STARTING - - HEALTHY - - DEGRADED - - UNHEALTHY - - STOPPING - - STOPPED - - ERRORING - - ERROR - type: string - type: array - style: form + - profile + x-codegen-request-body-name: body + /v1/account/reset_password: + post: + operationId: ResetPassword + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/ResetPasswordRequest' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListDeploymentsReply' + $ref: '#/components/schemas/ResetPasswordReply' description: A successful response. "400": content: @@ -1454,25 +1281,31 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Deployments tags: - - Deployments - /v1/deployments/{id}: - get: - operationId: GetDeployment + - profile + x-codegen-request-body-name: body + /v1/account/signup: + post: + operationId: Signup parameters: - - description: The id of the deployment - in: path - name: id - required: true + - description: Seon Fingerprint + in: header + name: seon-fp schema: type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/CreateAccountRequest' + description: Create new account + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetDeploymentReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -1511,30 +1344,30 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get Deployment tags: - - Deployments - /v1/deployments/{id}/cancel: + - profile + x-codegen-request-body-name: body + /v1/account/update_password: post: - description: |- - Deployment cancellation is allowed for the following status: - - pending - - provisioning - - scheduled - operationId: CancelDeployment + operationId: UpdatePassword parameters: - - description: The id of the deployment to cancel. - in: path - name: id - required: true + - description: Seon Fingerprint + in: header + name: seon-fp schema: type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/UpdatePasswordRequest' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CancelDeploymentReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -1573,44 +1406,29 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Cancel Deployment tags: - - Deployments - /v1/secrets: - get: - operationId: ListSecrets + - profile + x-codegen-request-body-name: body + /v1/account/validate/{id}: + post: + operationId: Validate parameters: - - in: query - name: name - schema: - type: string - - in: query - name: limit + - in: path + name: id + required: true schema: type: string - - in: query - name: offset + - description: Seon Fingerprint + in: header + name: seon-fp schema: type: string - - description: Filter by secret types - explode: true - in: query - name: types - schema: - items: - enum: - - SIMPLE - - REGISTRY - - MANAGED - type: string - type: array - style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListSecretsReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -1650,21 +1468,16 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - Secrets - post: - operationId: CreateSecret - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateSecret' - required: true + - profile + /v1/billing/manage: + get: + operationId: Manage responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateSecretReply' + $ref: '#/components/schemas/ManageReply' description: A successful response. "400": content: @@ -1704,23 +1517,20 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - Secrets - x-codegen-request-body-name: secret - /v1/secrets/{id}: - delete: - operationId: DeleteSecret - parameters: - - in: path - name: id - required: true - schema: - type: string + - billing + /v1/billing/next_invoice: + get: + description: |- + WARNING: Please don't use the following method. + Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. + USE AT YOUR OWN RISK. + operationId: NextInvoice responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteSecretReply' + $ref: '#/components/schemas/NextInvoiceReply' description: A successful response. "400": content: @@ -1759,22 +1569,18 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: "Experimental: Fetch next invoice" tags: - - Secrets + - billing + /v1/github/installation: get: - operationId: GetSecret - parameters: - - in: path - name: id - required: true - schema: - type: string + operationId: GetGithubInstallation responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetSecretReply' + $ref: '#/components/schemas/GetGithubInstallationReply' description: A successful response. "400": content: @@ -1813,32 +1619,23 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Fetch github installation configuration tags: - - Secrets - patch: - operationId: UpdateSecret2 - parameters: - - in: path - name: id - required: true - schema: - type: string - - in: query - name: update_mask - schema: - type: string + - organization + post: + operationId: GithubInstallation requestBody: content: '*/*': schema: - $ref: '#/components/schemas/Secret' + $ref: '#/components/schemas/GithubInstallationRequest' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateSecretReply' + $ref: '#/components/schemas/GithubInstallationReply' description: A successful response. "400": content: @@ -1877,33 +1674,25 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Start github installation tags: - - Secrets - x-codegen-request-body-name: secret - put: - operationId: UpdateSecret - parameters: - - in: path - name: id - required: true - schema: - type: string - - in: query - name: update_mask - schema: - type: string + - organization + x-codegen-request-body-name: body + /v1/github/installation/callback: + post: + operationId: GithubInstallationCallback requestBody: content: '*/*': schema: - $ref: '#/components/schemas/Secret' + $ref: '#/components/schemas/GithubInstallationCallbackRequest' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateSecretReply' + $ref: '#/components/schemas/GithubInstallationCallbackReply' description: A successful response. "400": content: @@ -1942,30 +1731,25 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Github callback for app installation tags: - - Secrets - x-codegen-request-body-name: secret - /v1/secrets/{id}/reveal: + - organization + x-codegen-request-body-name: body + /v1/organizations: post: - operationId: RevealSecret - parameters: - - in: path - name: id - required: true - schema: - type: string + operationId: CreateOrganization requestBody: content: '*/*': schema: - type: object + $ref: '#/components/schemas/CreateOrganizationRequest' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/RevealSecretReply' + $ref: '#/components/schemas/CreateOrganizationReply' description: A successful response. "400": content: @@ -2004,65 +1788,17 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Create organization tags: - - Secrets + - organization x-codegen-request-body-name: body - /v1/domains: - get: - operationId: ListDomains + /v1/organizations/{id}: + delete: + operationId: DeleteOrganization parameters: - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: |- - (Optional) A filter for types - - - AUTOASSIGNED: Domain like -.koyeb.app - explode: true - in: query - name: types - schema: - items: - enum: - - AUTOASSIGNED - - CUSTOM - type: string - type: array - style: form - - description: (Optional) A filter for statuses - explode: true - in: query - name: statuses - schema: - items: - enum: - - PENDING - - ACTIVE - - ERROR - - DELETING - - DELETED - type: string - type: array - style: form - - description: (Optional) A filter for apps - explode: true - in: query - name: app_ids - schema: - items: - type: string - type: array - style: form - - description: (Optional) A filter for name - in: query - name: name + - in: path + name: id + required: true schema: type: string responses: @@ -2070,7 +1806,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListDomainsReply' + $ref: '#/components/schemas/DeleteOrganizationReply' description: A successful response. "400": content: @@ -2109,22 +1845,23 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Delete an organization tags: - - Domains - post: - operationId: CreateDomain - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateDomain' + - organization + get: + operationId: GetOrganization + parameters: + - in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateDomainReply' + $ref: '#/components/schemas/GetOrganizationReply' description: A successful response. "400": content: @@ -2163,24 +1900,33 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get organization tags: - - Domains - x-codegen-request-body-name: domain - /v1/domains/{id}: - delete: - operationId: DeleteDomain + - organization + patch: + operationId: UpdateOrganization2 parameters: - in: path name: id required: true schema: type: string + - in: query + name: update_mask + schema: + type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/Organization' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteDomainReply' + $ref: '#/components/schemas/UpdateOrganizationReply' description: A successful response. "400": content: @@ -2219,22 +1965,34 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Update organization tags: - - Domains - get: - operationId: GetDomain + - organization + x-codegen-request-body-name: organization + put: + operationId: UpdateOrganization parameters: - in: path name: id required: true schema: type: string + - in: query + name: update_mask + schema: + type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/Organization' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetDomainReply' + $ref: '#/components/schemas/UpdateOrganizationReply' description: A successful response. "400": content: @@ -2273,32 +2031,31 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Update organization tags: - - Domains - patch: - operationId: UpdateDomain + - organization + x-codegen-request-body-name: organization + /v1/organizations/{id}/deactivate: + post: + operationId: DeactivateOrganization parameters: - in: path name: id required: true schema: type: string - - in: query - name: update_mask - schema: - type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpdateDomain' + type: object required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateDomainReply' + $ref: '#/components/schemas/DeactivateOrganizationReply' description: A successful response. "400": content: @@ -2337,24 +2094,31 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Deactivate an organization tags: - - Domains - x-codegen-request-body-name: domain - /v1/domains/{id}/refresh: + - organization + x-codegen-request-body-name: body + /v1/organizations/{id}/plan: post: - operationId: RefreshDomainStatus + operationId: UpdateOrganizationPlan parameters: - in: path name: id required: true schema: type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/UpdateOrganizationPlan_request' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/RefreshDomainStatusReply' + $ref: '#/components/schemas/UpdateOrganizationPlanReply' description: A successful response. "400": content: @@ -2393,48 +2157,31 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Update organization plan tags: - - Domains - /v1/app_events: - get: - operationId: ListAppEvents + - organization + x-codegen-request-body-name: body + /v1/organizations/{id}/reactivate: + post: + operationId: ReactivateOrganization parameters: - - description: (Optional) Filter on app id - in: query - name: app_id - schema: - type: string - - description: (Optional) Filter on app event types - explode: true - in: query - name: types - schema: - items: - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order + - in: path + name: id + required: true schema: type: string + requestBody: + content: + '*/*': + schema: + type: object + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListAppEventsReply' + $ref: '#/components/schemas/ReactivateOrganizationReply' description: A successful response. "400": content: @@ -2473,34 +2220,99 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List App events + summary: Reactivate an organization tags: - - Apps - /v1/apps: - get: - operationId: ListApps + - organization + x-codegen-request-body-name: body + /v1/organizations/{id}/signup_qualification: + post: + operationId: UpsertSignupQualification parameters: - - description: (Optional) The number of items to return - in: query - name: limit + - in: path + name: id + required: true schema: type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/UpsertSignupQualification_request' + required: true + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/UpsertSignupQualificationReply' + description: A successful response. + "400": + content: + '*/*': + schema: + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Upsert organization's signup qualification + tags: + - organization + x-codegen-request-body-name: body + /v1/organizations/{id}/switch: + post: + operationId: SwitchOrganization + parameters: + - in: path + name: id + required: true schema: type: string - - description: (Optional) A filter for name - in: query - name: name + - description: Seon Fingerprint + in: header + name: seon-fp schema: type: string + requestBody: + content: + '*/*': + schema: + type: object + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListAppsReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -2539,23 +2351,25 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List App + summary: Switch organization context tags: - - Apps + - organization + x-codegen-request-body-name: body + /v1/sso/canny: post: - operationId: CreateApp + operationId: CannyAuth requestBody: content: '*/*': schema: - $ref: '#/components/schemas/CreateApp' + $ref: '#/components/schemas/CannyAuthRequest' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateAppReply' + $ref: '#/components/schemas/CannyAuthReply' description: A successful response. "400": content: @@ -2594,27 +2408,24 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Create App tags: - - Apps - x-codegen-request-body-name: app - /v1/apps/{id}: - delete: - description: App deletion is allowed for all status. - operationId: DeleteApp - parameters: - - description: The id of the App to delete - in: path - name: id + - sso + x-codegen-request-body-name: body + /v1/sso/discourse: + post: + operationId: DiscourseAuth + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/DiscourseAuthRequest' required: true - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteAppReply' + $ref: '#/components/schemas/DiscourseAuthReply' description: A successful response. "400": content: @@ -2653,16 +2464,44 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Delete App tags: - - Apps + - sso + x-codegen-request-body-name: body + /v1/organization_invitations: get: - operationId: GetApp + operationId: ListOrganizationInvitations parameters: - - description: The id of the App - in: path - name: id - required: true + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Filter on organization invitation statuses + explode: true + in: query + name: statuses + schema: + items: + enum: + - INVALID + - PENDING + - ACCEPTED + - REFUSED + - EXPIRED + type: string + type: array + style: form + - description: |- + (Optional) Filter on invitee ID. Will match both invitations sent to + that user_id and invitations sent to the email of that user_id. + The only valid value is the requester's user_id + in: query + name: user_id schema: type: string responses: @@ -2670,7 +2509,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/GetAppReply' + $ref: '#/components/schemas/ListOrganizationInvitationsReply' description: A successful response. "400": content: @@ -2709,34 +2548,22 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get App tags: - - Apps - patch: - operationId: UpdateApp2 - parameters: - - description: The id of the app to update. - in: path - name: id - required: true - schema: - type: string - - in: query - name: update_mask - schema: - type: string + - OrganizationInvitations + post: + operationId: CreateOrganizationInvitation requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpdateApp' + $ref: '#/components/schemas/CreateOrganizationInvitationRequest' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateAppReply' + $ref: '#/components/schemas/CreateOrganizationInvitationReply' description: A successful response. "400": content: @@ -2775,33 +2602,25 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update App tags: - - Apps - x-codegen-request-body-name: app - put: - operationId: UpdateApp + - OrganizationInvitations + x-codegen-request-body-name: body + /v1/organization_invitations/{id}: + delete: + operationId: DeleteOrganizationInvitation parameters: - - description: The id of the app to update. + - description: The id of the organization invitation to delete in: path name: id required: true schema: type: string - - in: query - name: app.name - schema: - type: string - - in: query - name: update_mask - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateAppReply' + $ref: '#/components/schemas/DeleteOrganizationInvitationReply' description: A successful response. "400": content: @@ -2840,21 +2659,12 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update App tags: - - Apps - /v1/apps/{id}/pause: - post: - description: |- - App pause action is allowed for the following status: - - starting - - healthy - - degraded - - unhealthy - - resuming - operationId: PauseApp + - OrganizationInvitations + get: + operationId: GetOrganizationInvitation parameters: - - description: The id of the app to pause. + - description: The id of the invitation to get in: path name: id required: true @@ -2865,7 +2675,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/PauseAppReply' + $ref: '#/components/schemas/GetOrganizationInvitationReply' description: A successful response. "400": content: @@ -2904,28 +2714,30 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Pause App tags: - - Apps - /v1/apps/{id}/resume: + - OrganizationInvitations + /v1/organization_invitations/{id}/resend: post: - description: |- - App resume action is allowed for the following status: - - paused - operationId: ResumeApp + operationId: ResendOrganizationInvitation parameters: - - description: The id of the app to resume. + - description: The id of the organization invitation to resend in: path name: id required: true schema: type: string + requestBody: + content: + '*/*': + schema: + type: object + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ResumeAppReply' + $ref: '#/components/schemas/ResendOrganizationInvitationReply' description: A successful response. "400": content: @@ -2964,134 +2776,81 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Resume App tags: - - Apps - /v1/usages: - get: - operationId: GetOrganizationUsage + - OrganizationInvitations + x-codegen-request-body-name: body + /v1/account/login: + post: + operationId: Login parameters: - - description: The starting time of the period to get data from - in: query - name: starting_time - schema: - format: date-time - type: string - - description: The ending time of the period to get data from - in: query - name: ending_time + - description: Seon Fingerprint + in: header + name: seon-fp schema: - format: date-time type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/LoginRequest' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetOrganizationUsageReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. - default: + "400": content: '*/*': schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: Get organization usage - tags: - - Usages - /v1/usages/details: - get: - operationId: GetOrganizationUsageDetails - parameters: - - description: The starting time of the period to get data from - in: query - name: starting_time - schema: - format: date-time - type: string - - description: The ending time of the period to get data from - in: query - name: ending_time - schema: - format: date-time - type: string - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order - schema: - type: string - - description: "If defined with the value 'text/csv', a csv file is returned" - in: header - name: Accept - schema: - type: string - responses: - "200": + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": content: '*/*': schema: - $ref: '#/components/schemas/GetOrganizationUsageDetailsReply' - description: A successful response. + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get organization usage details + summary: Login user tags: - - Usages - /v1/regional_deployment_events: - get: - operationId: ListRegionalDeploymentEvents - parameters: - - description: (Optional) Filter on regional deployment id - in: query - name: regional_deployment_id - schema: - type: string - - description: (Optional) Filter on regional deployment event types - explode: true - in: query - name: types - schema: - items: - type: string - type: array - style: form - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Sorts the list in the ascending or the descending - order - in: query - name: order - schema: - type: string + - Sessions + x-codegen-request-body-name: body + /v1/account/logout: + delete: + operationId: Logout responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListRegionalDeploymentEventsReply' + $ref: '#/components/schemas/LogoutReply' description: A successful response. "400": content: @@ -3130,34 +2889,18 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List Regional Deployment events + summary: Logout user tags: - - RegionalDeployments - /v1/regional_deployments: - get: - operationId: ListRegionalDeployments - parameters: - - description: (Optional) Filter on deployment id - in: query - name: deployment_id - schema: - type: string - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string + - Sessions + /v1/account/refresh: + put: + operationId: RefreshToken responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListRegionalDeploymentsReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -3196,27 +2939,21 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: |- - Experimental: List regional deployments - Use at your own risk + summary: Refresh token tags: - - RegionalDeployments - /v1/regional_deployments/{id}: - get: - operationId: GetRegionalDeployment - parameters: - - description: The id of the regional deployment - in: path - name: id - required: true - schema: - type: string + - Sessions + /v1/account/session: + post: + description: |- + Creates a new session without an organization for current user. + NOTE: If you want a session linked to another organization, please use "Switch organization". + operationId: NewSession responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetRegionalDeploymentReply' + $ref: '#/components/schemas/LoginReply' description: A successful response. "400": content: @@ -3255,11 +2992,9 @@ paths: schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: |- - Experimental: Get regional deployment - Use at your own risk + summary: New session tags: - - RegionalDeployments + - Sessions /v1/payment_methods: get: operationId: ListPaymentMethods @@ -3304,6 +3039,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3317,6 +3058,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -3347,6 +3094,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3360,6 +3113,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -3392,6 +3151,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3405,6 +3170,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -3435,6 +3206,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3448,6 +3225,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -3485,6 +3268,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3498,6 +3287,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -3508,18 +3303,23 @@ paths: tags: - PaymentMethods x-codegen-request-body-name: body - /v1/organization_members: + /v1/credentials: get: - operationId: ListOrganizationMembers + operationId: ListCredentials parameters: - - description: (Optional) The number of items to return + - description: (Optional) A filter for type in: query - name: limit + name: type schema: + default: INVALID + enum: + - INVALID + - USER + - ORGANIZATION type: string - - description: (Optional) The offset in the list of item to return + - description: (Optional) A filter for name in: query - name: offset + name: name schema: type: string - description: (Optional) Filter for an organization @@ -3532,12 +3332,22 @@ paths: name: user_id schema: type: string + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListOrganizationMembersReply' + $ref: '#/components/schemas/ListCredentialsReply' description: A successful response. "400": content: @@ -3545,6 +3355,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3558,30 +3374,35 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List organization members + summary: List credentials tags: - - OrganizationMembers - /v1/organization_members/{id}: - delete: - operationId: RemoveOrganizationMember - parameters: - - in: path - name: id + - Credentials + post: + operationId: CreateCredential + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/CreateCredential' required: true - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/RemoveOrganizationMemberReply' + $ref: '#/components/schemas/CreateCredentialReply' description: A successful response. "400": content: @@ -3589,6 +3410,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3602,50 +3429,29 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Remove an organization member + summary: Create credential tags: - - OrganizationMembers - /v1/organization_invitations: - get: - operationId: ListOrganizationInvitations + - Credentials + x-codegen-request-body-name: credential + /v1/credentials/{id}: + delete: + operationId: DeleteCredential parameters: - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset - schema: - type: string - - description: (Optional) Filter on organization invitation statuses - explode: true - in: query - name: statuses - schema: - items: - enum: - - INVALID - - PENDING - - ACCEPTED - - REFUSED - - EXPIRED - type: string - type: array - style: form - - description: |- - (Optional) Filter on invitee ID. Will match both invitations sent to - that user_id and invitations sent to the email of that user_id. - The only valid value is the requester's user_id - in: query - name: user_id + - in: path + name: id + required: true schema: type: string responses: @@ -3653,7 +3459,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListOrganizationInvitationsReply' + $ref: '#/components/schemas/DeleteCredentialReply' description: A successful response. "400": content: @@ -3661,6 +3467,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3674,28 +3486,35 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Delete credential tags: - - OrganizationInvitations - post: - operationId: CreateOrganizationInvitation - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateOrganizationInvitationRequest' + - Credentials + get: + operationId: GetCredential + parameters: + - in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateOrganizationInvitationReply' + $ref: '#/components/schemas/GetCredentialReply' description: A successful response. "400": content: @@ -3703,6 +3522,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3716,31 +3541,45 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get credential tags: - - OrganizationInvitations - x-codegen-request-body-name: body - /v1/organization_invitations/{id}: - delete: - operationId: DeleteOrganizationInvitation + - Credentials + patch: + operationId: UpdateCredential2 parameters: - - description: The id of the organization invitation to delete - in: path + - in: path name: id required: true schema: type: string + - in: query + name: update_mask + schema: + type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/Credential' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteOrganizationInvitationReply' + $ref: '#/components/schemas/UpdateCredentialReply' description: A successful response. "400": content: @@ -3748,6 +3587,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3761,29 +3606,46 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Update credential tags: - - OrganizationInvitations - get: - operationId: GetOrganizationInvitation + - Credentials + x-codegen-request-body-name: credential + put: + operationId: UpdateCredential parameters: - - description: The id of the invitation to get - in: path + - in: path name: id required: true schema: type: string + - in: query + name: update_mask + schema: + type: string + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/Credential' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetOrganizationInvitationReply' + $ref: '#/components/schemas/UpdateCredentialReply' description: A successful response. "400": content: @@ -3791,6 +3653,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3804,36 +3672,37 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Update credential tags: - - OrganizationInvitations - /v1/organization_invitations/{id}/resend: + - Credentials + x-codegen-request-body-name: credential + /v1/organization_confirmations/{id}: post: - operationId: ResendOrganizationInvitation + operationId: ConfirmOrganizationAction parameters: - - description: The id of the organization invitation to resend - in: path + - in: path name: id required: true schema: type: string - requestBody: - content: - '*/*': - schema: - type: object - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ResendOrganizationInvitationReply' + $ref: '#/components/schemas/ConfirmOrganizationActionReply' description: A successful response. "400": content: @@ -3841,6 +3710,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3854,22 +3729,27 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. - default: + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. + default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Confirm organization action tags: - - OrganizationInvitations - x-codegen-request-body-name: body - /v1/subscriptions/{id}: + - OrganizationConfirmations + /v1/organizations/{organization_id}/quotas: get: - operationId: GetSubscription + operationId: GetQuotas parameters: - - description: The id of the instance - in: path - name: id + - in: path + name: organization_id required: true schema: type: string @@ -3878,7 +3758,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/GetSubscriptionReply' + $ref: '#/components/schemas/GetQuotasReply' description: A successful response. "400": content: @@ -3886,6 +3766,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3899,20 +3785,26 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get Subscription tags: - - Subscriptions - /v1/organization_confirmations/{id}: - post: - operationId: ConfirmOrganizationAction + - OrganizationQuotas + /v1/users/{id}: + delete: + operationId: DeleteUser parameters: - - in: path + - description: The id of the user + in: path name: id required: true schema: @@ -3922,7 +3814,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ConfirmOrganizationActionReply' + $ref: '#/components/schemas/DeleteUserReply' description: A successful response. "400": content: @@ -3930,6 +3822,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -3943,52 +3841,29 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Confirm organization action + summary: Delete user tags: - - OrganizationConfirmations - /v1/credentials: + - Users + /v1/subscriptions/{id}: get: - operationId: ListCredentials + operationId: GetSubscription parameters: - - description: (Optional) A filter for type - in: query - name: type - schema: - default: INVALID - enum: - - INVALID - - USER - - ORGANIZATION - type: string - - description: (Optional) A filter for name - in: query - name: name - schema: - type: string - - description: (Optional) Filter for an organization - in: query - name: organization_id - schema: - type: string - - description: (Optional) Filter for an user - in: query - name: user_id - schema: - type: string - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset + - description: The id of the instance + in: path + name: id + required: true schema: type: string responses: @@ -3996,7 +3871,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListCredentialsReply' + $ref: '#/components/schemas/GetSubscriptionReply' description: A successful response. "400": content: @@ -4004,6 +3879,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4017,29 +3898,53 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List credentials + summary: Get Subscription tags: - - Credentials - post: - operationId: CreateCredential - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateCredential' - required: true + - Subscriptions + /v1/git/branches: + get: + operationId: ListBranches + parameters: + - description: (Optional) Filter on one repository. + in: query + name: repository_id + schema: + type: string + - description: |- + (Optional) Filter on branch name using a fuzzy search. + Repository filter is required to enable this filter. + in: query + name: name + schema: + type: string + - description: (Optional) The number of items to return. + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return. + in: query + name: offset + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateCredentialReply' + $ref: '#/components/schemas/kgitproxy.ListBranchesReply' description: A successful response. "400": content: @@ -4047,6 +3952,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4060,23 +3971,37 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Create credential tags: - - Credentials - x-codegen-request-body-name: credential - /v1/credentials/{id}: - delete: - operationId: DeleteCredential + - Repositories + /v1/git/repositories: + get: + operationId: ListRepositories parameters: - - in: path - name: id - required: true + - description: (Optional) Filter on repository name using a fuzzy search. + in: query + name: name + schema: + type: string + - description: (Optional) The number of items to return. + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return. + in: query + name: offset schema: type: string responses: @@ -4084,7 +4009,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/DeleteCredentialReply' + $ref: '#/components/schemas/kgitproxy.ListRepositoriesReply' description: A successful response. "400": content: @@ -4092,6 +4017,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4105,20 +4036,26 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Delete credential tags: - - Credentials - get: - operationId: GetCredential + - Repositories + /v1/git/sync/organization/{organization_id}: + post: + operationId: ResyncOrganization parameters: - in: path - name: id + name: organization_id required: true schema: type: string @@ -4127,7 +4064,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/GetCredentialReply' + $ref: '#/components/schemas/kgitproxy.ResyncOrganizationReply' description: A successful response. "400": content: @@ -4135,6 +4072,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4148,39 +4091,69 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get credential tags: - - Credentials - patch: - operationId: UpdateCredential2 + - Repositories + /v1/instance_events: + get: + operationId: ListInstanceEvents parameters: - - in: path - name: id - required: true + - description: (Optional) Filter on instance id + in: query + name: instance_id schema: type: string - - in: query - name: update_mask + - description: (Optional) Filter on list of instance id + explode: true + in: query + name: instance_ids schema: - type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/Credential' - required: true + items: + type: string + type: array + style: form + - description: (Optional) Filter on instance event types + explode: true + in: query + name: types + schema: + items: + type: string + type: array + style: form + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateCredentialReply' + $ref: '#/components/schemas/ListInstanceEventsReply' description: A successful response. "400": content: @@ -4188,6 +4161,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4201,40 +4180,89 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update credential + summary: List Instance events tags: - - Credentials - x-codegen-request-body-name: credential - put: - operationId: UpdateCredential + - Instances + /v1/instances: + get: + operationId: ListInstances parameters: - - in: path - name: id - required: true + - description: (Optional) Filter on application id + in: query + name: app_id schema: type: string - - in: query - name: update_mask + - description: (Optional) Filter on service id + in: query + name: service_id + schema: + type: string + - description: (Optional) Filter on deployment id + in: query + name: deployment_id + schema: + type: string + - description: (Optional) Filter on regional deployment id + in: query + name: regional_deployment_id + schema: + type: string + - description: (Optional) Filter on allocation id + in: query + name: allocation_id + schema: + type: string + - description: (Optional) Filter on instance statuses + explode: true + in: query + name: statuses + schema: + items: + enum: + - ALLOCATING + - STARTING + - HEALTHY + - UNHEALTHY + - STOPPING + - STOPPED + - ERROR + type: string + type: array + style: form + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/Credential' - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateCredentialReply' + $ref: '#/components/schemas/ListInstancesReply' description: A successful response. "400": content: @@ -4242,6 +4270,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4255,21 +4289,26 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update credential + summary: List Instances tags: - - Credentials - x-codegen-request-body-name: credential - /v1/users/{id}: - delete: - operationId: DeleteUser + - Instances + /v1/instances/{id}: + get: + operationId: GetInstance parameters: - - description: The id of the user + - description: The id of the instance in: path name: id required: true @@ -4280,7 +4319,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/DeleteUserReply' + $ref: '#/components/schemas/GetInstanceReply' description: A successful response. "400": content: @@ -4288,6 +4327,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4301,36 +4346,61 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Delete user + summary: Get Instance tags: - - Users - /v1/account/login: - post: - operationId: Login + - Instances + /v1/service_events: + get: + operationId: ListServiceEvents parameters: - - description: Seon Fingerprint - in: header - name: seon-fp + - description: (Optional) Filter on service id + in: query + name: service_id + schema: + type: string + - description: (Optional) Filter on service event types + explode: true + in: query + name: types + schema: + items: + type: string + type: array + style: form + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/LoginRequest' - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/ListServiceEventsReply' description: A successful response. "400": content: @@ -4338,45 +4408,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": + "401": content: '*/*': schema: $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. - default: - content: - '*/*': - schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: Login user - tags: - - Sessions - x-codegen-request-body-name: body - /v1/account/logout: - delete: - operationId: Logout - responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/LogoutReply' - description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error + description: Returned when the token is not valid. "403": content: '*/*': @@ -4390,24 +4427,65 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Logout user + summary: List Service events tags: - - Sessions - /v1/account/refresh: - put: - operationId: RefreshToken + - Services + /v1/services: + get: + operationId: ListServices + parameters: + - description: (Optional) The id of the app + in: query + name: app_id + schema: + type: string + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) A filter for name + in: query + name: name + schema: + type: string + - description: (Optional) Filter on service types + explode: true + in: query + name: types + schema: + items: + enum: + - INVALID_TYPE + - WEB + - WORKER + - DATABASE + type: string + type: array + style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/ListServicesReply' description: A successful response. "400": content: @@ -4415,6 +4493,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4428,27 +4512,41 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Refresh token + summary: List Services tags: - - Sessions - /v1/account/session: + - Services post: - description: |- - Creates a new session without an organization for current user. - NOTE: If you want a session linked to another organization, please use "Switch organization". - operationId: NewSession + operationId: CreateService + parameters: + - description: If set only run validation + in: query + name: dry_run + schema: + type: boolean + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/CreateService' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/CreateServiceReply' description: A successful response. "400": content: @@ -4456,6 +4554,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4469,25 +4573,31 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: New session + summary: Create Service tags: - - Sessions - /v1/account/activities: - get: - operationId: GetAccountActivities + - Services + x-codegen-request-body-name: service + /v1/services/{id}: + delete: + description: Service deletion is allowed for all status. + operationId: DeleteService parameters: - - in: query - name: limit - schema: - type: string - - in: query - name: offset + - description: The id of the entity to delete + in: path + name: id + required: true schema: type: string responses: @@ -4495,7 +4605,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ActivityList' + $ref: '#/components/schemas/DeleteServiceReply' description: A successful response. "400": content: @@ -4503,6 +4613,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4516,29 +4632,36 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Delete Service tags: - - activity - /v1/account/invite: - post: - operationId: CreateInvite - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/InviteUserRequest' + - Services + get: + operationId: GetService + parameters: + - description: The id of the Service + in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/Empty' + $ref: '#/components/schemas/GetServiceReply' description: A successful response. "400": content: @@ -4546,6 +4669,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4559,41 +4688,47 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get Service tags: - - invite - x-codegen-request-body-name: body - /v1/account/oauth: - get: - operationId: GetOAuthOptions + - Services + patch: + operationId: UpdateService2 parameters: - - description: Which authentication flow is being initiated - in: query - name: action + - description: The id of the entity to update + in: path + name: id + required: true schema: - default: signin - enum: - - signin - - signup - - register type: string - - description: A small (limited to 400 characters) string of arbitrary metadata - which will be encoded in the state + - description: "If set, run validation and check that the service exists" in: query - name: metadata + name: dry_run schema: - type: string + type: boolean + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/UpdateService' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetOAuthOptionsReply' + $ref: '#/components/schemas/UpdateServiceReply' description: A successful response. "400": content: @@ -4601,6 +4736,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4614,35 +4755,48 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get OAuth Providers + summary: Update Service tags: - - profile - post: - operationId: OAuthCallback + - Services + x-codegen-request-body-name: service + put: + operationId: UpdateService parameters: - - description: Seon Fingerprint - in: header - name: seon-fp + - description: The id of the entity to update + in: path + name: id + required: true schema: type: string + - description: "If set, run validation and check that the service exists" + in: query + name: dry_run + schema: + type: boolean requestBody: content: '*/*': schema: - $ref: '#/components/schemas/OAuthCallbackRequest' + $ref: '#/components/schemas/UpdateService' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/OAuthCallbackReply' + $ref: '#/components/schemas/UpdateServiceReply' description: A successful response. "400": content: @@ -4650,6 +4804,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4663,88 +4823,45 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Authenticate using OAuth + summary: Update Service tags: - - profile - x-codegen-request-body-name: body - /v1/account/organization: - get: - operationId: GetCurrentOrganization - responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/GetOrganizationReply' - description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. - default: - content: - '*/*': - schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - tags: - - profile - /v1/account/organization_invitations: - get: - operationId: ListUserOrganizationInvitations + - Services + x-codegen-request-body-name: service + /v1/services/{id}/pause: + post: + description: |- + Service pause action is allowed for the following status: + - starting + - healthy + - degraded + - unhealthy + - resuming + operationId: PauseService parameters: - - description: (Optional) The number of items to return - in: query - name: limit - schema: - type: string - - description: (Optional) The offset in the list of item to return - in: query - name: offset + - description: The id of the service to pause. + in: path + name: id + required: true schema: type: string - - description: (Optional) Filter on organization invitation statuses - explode: true - in: query - name: statuses - schema: - items: - enum: - - INVALID - - PENDING - - ACCEPTED - - REFUSED - - EXPIRED - type: string - type: array - style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListUserOrganizationInvitationsReply' + $ref: '#/components/schemas/PauseServiceReply' description: A successful response. "400": content: @@ -4752,50 +4869,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": + "401": content: '*/*': schema: $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. - default: - content: - '*/*': - schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - tags: - - profile - /v1/account/organization_invitations/{id}: - get: - operationId: GetUserOrganizationInvitation - parameters: - - description: The id of the organization invitation to get - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/GetUserOrganizationInvitationReply' - description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error + description: Returned when the token is not valid. "403": content: '*/*': @@ -4809,20 +4888,26 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Pause Service tags: - - profile - /v1/account/organization_invitations/{id}/accept: + - Services + /v1/services/{id}/redeploy: post: - operationId: AcceptOrganizationInvitation + operationId: ReDeploy parameters: - - description: The id of the organization invitation to accept - in: path + - in: path name: id required: true schema: @@ -4831,14 +4916,14 @@ paths: content: '*/*': schema: - type: object + $ref: '#/components/schemas/RedeployRequest.Info' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/AcceptOrganizationInvitationReply' + $ref: '#/components/schemas/RedeployReply' description: A successful response. "400": content: @@ -4846,6 +4931,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4859,37 +4950,41 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: ReDeploy Service tags: - - profile - x-codegen-request-body-name: body - /v1/account/organization_invitations/{id}/decline: + - Services + x-codegen-request-body-name: info + /v1/services/{id}/resume: post: - operationId: DeclineOrganizationInvitation + description: |- + Service resume action is allowed for the following status: + - paused + operationId: ResumeService parameters: - - description: The id of the organization invitation to decline + - description: The id of the service to pause. in: path name: id required: true schema: type: string - requestBody: - content: - '*/*': - schema: - type: object - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeclineOrganizationInvitationReply' + $ref: '#/components/schemas/ResumeServiceReply' description: A successful response. "400": content: @@ -4897,6 +4992,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -4910,119 +5011,170 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Resume Service tags: - - profile - x-codegen-request-body-name: body - /v1/account/profile: + - Services + /v1/usages: get: - operationId: GetCurrentUser + operationId: GetOrganizationUsage + parameters: + - description: The starting time of the period to get data from + in: query + name: starting_time + schema: + format: date-time + type: string + - description: The ending time of the period to get data from + in: query + name: ending_time + schema: + format: date-time + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UserReply' + $ref: '#/components/schemas/GetOrganizationUsageReply' description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get organization usage tags: - - profile - patch: - operationId: UpdateUser2 + - Usages + /v1/usages/details: + get: + operationId: GetOrganizationUsageDetails parameters: - - in: query - name: update_mask + - description: The starting time of the period to get data from + in: query + name: starting_time schema: + format: date-time type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/UpdateUserRequest.UserUpdateBody' - required: true - responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/UserReply' - description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": + - description: The ending time of the period to get data from + in: query + name: ending_time + schema: + format: date-time + type: string + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order + schema: + type: string + - description: "If defined with the value 'text/csv', a csv file is returned" + in: header + name: Accept + schema: + type: string + responses: + "200": content: '*/*': schema: - $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. + $ref: '#/components/schemas/GetOrganizationUsageDetailsReply' + description: A successful response. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get organization usage details tags: - - profile - x-codegen-request-body-name: user - put: - operationId: UpdateUser + - Usages + /v1/domains: + get: + operationId: ListDomains parameters: - - in: query - name: update_mask + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: |- + (Optional) A filter for types + + - AUTOASSIGNED: Domain like -.koyeb.app + explode: true + in: query + name: types + schema: + items: + enum: + - AUTOASSIGNED + - CUSTOM + type: string + type: array + style: form + - description: (Optional) A filter for statuses + explode: true + in: query + name: statuses + schema: + items: + enum: + - PENDING + - ACTIVE + - ERROR + - DELETING + - DELETED + type: string + type: array + style: form + - description: (Optional) A filter for apps + explode: true + in: query + name: app_ids + schema: + items: + type: string + type: array + style: form + - description: (Optional) A filter for name + in: query + name: name schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/UpdateUserRequest.UserUpdateBody' - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UserReply' + $ref: '#/components/schemas/ListDomainsReply' description: A successful response. "400": content: @@ -5030,6 +5182,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5043,6 +5201,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5050,23 +5214,21 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - x-codegen-request-body-name: user - /v1/account/resend_validation: + - Domains post: - operationId: ResendEmailValidation + operationId: CreateDomain requestBody: content: '*/*': schema: - $ref: '#/components/schemas/ResendEmailValidationRequest' + $ref: '#/components/schemas/CreateDomain' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ResendEmailValidationReply' + $ref: '#/components/schemas/CreateDomainReply' description: A successful response. "400": content: @@ -5074,6 +5236,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5087,6 +5255,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5094,23 +5268,23 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - x-codegen-request-body-name: body - /v1/account/reset_password: - post: - operationId: ResetPassword - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/ResetPasswordRequest' + - Domains + x-codegen-request-body-name: domain + /v1/domains/{id}: + delete: + operationId: DeleteDomain + parameters: + - in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ResetPasswordReply' + $ref: '#/components/schemas/DeleteDomainReply' description: A successful response. "400": content: @@ -5118,6 +5292,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5131,6 +5311,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5138,30 +5324,21 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - x-codegen-request-body-name: body - /v1/account/signup: - post: - operationId: Signup + - Domains + get: + operationId: GetDomain parameters: - - description: Seon Fingerprint - in: header - name: seon-fp + - in: path + name: id + required: true schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CreateAccountRequest' - description: Create new account - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/GetDomainReply' description: A successful response. "400": content: @@ -5169,6 +5346,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5182,6 +5365,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5189,29 +5378,31 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - x-codegen-request-body-name: body - /v1/account/update_password: - post: - operationId: UpdatePassword + - Domains + patch: + operationId: UpdateDomain parameters: - - description: Seon Fingerprint - in: header - name: seon-fp + - in: path + name: id + required: true + schema: + type: string + - in: query + name: update_mask schema: type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpdatePasswordRequest' + $ref: '#/components/schemas/UpdateDomain' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/UpdateDomainReply' description: A successful response. "400": content: @@ -5219,6 +5410,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5232,6 +5429,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5239,28 +5442,23 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - x-codegen-request-body-name: body - /v1/account/validate/{id}: - post: - operationId: Validate + - Domains + x-codegen-request-body-name: domain + /v1/domains/{id}/refresh: + post: + operationId: RefreshDomainStatus parameters: - in: path name: id required: true schema: type: string - - description: Seon Fingerprint - in: header - name: seon-fp - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/RefreshDomainStatusReply' description: A successful response. "400": content: @@ -5268,6 +5466,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5281,6 +5485,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -5288,16 +5498,47 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - profile - /v1/billing/manage: + - Domains + /v1/app_events: get: - operationId: Manage + operationId: ListAppEvents + parameters: + - description: (Optional) Filter on app id + in: query + name: app_id + schema: + type: string + - description: (Optional) Filter on app event types + explode: true + in: query + name: types + schema: + items: + type: string + type: array + style: form + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ManageReply' + $ref: '#/components/schemas/ListAppEventsReply' description: A successful response. "400": content: @@ -5305,6 +5546,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5318,27 +5565,46 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: List App events tags: - - billing - /v1/billing/next_invoice: + - Apps + /v1/apps: get: - description: |- - WARNING: Please don't use the following method. - Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. - USE AT YOUR OWN RISK. - operationId: NextInvoice + operationId: ListApps + parameters: + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) A filter for name + in: query + name: name + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/NextInvoiceReply' + $ref: '#/components/schemas/ListAppsReply' description: A successful response. "400": content: @@ -5346,6 +5612,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5359,24 +5631,35 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: "Experimental: Fetch next invoice" + summary: List App tags: - - billing - /v1/github/installation: - get: - operationId: GetGithubInstallation + - Apps + post: + operationId: CreateApp + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/CreateApp' + required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GetGithubInstallationReply' + $ref: '#/components/schemas/CreateAppReply' description: A successful response. "400": content: @@ -5384,6 +5667,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5397,29 +5686,39 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Fetch github installation configuration + summary: Create App tags: - - organization - post: - operationId: GithubInstallation - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/GithubInstallationRequest' + - Apps + x-codegen-request-body-name: app + /v1/apps/{id}: + delete: + description: App deletion is allowed for all status. + operationId: DeleteApp + parameters: + - description: The id of the App to delete + in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GithubInstallationReply' + $ref: '#/components/schemas/DeleteAppReply' description: A successful response. "400": content: @@ -5427,6 +5726,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5440,31 +5745,36 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Start github installation + summary: Delete App tags: - - organization - x-codegen-request-body-name: body - /v1/github/installation/callback: - post: - operationId: GithubInstallationCallback - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/GithubInstallationCallbackRequest' + - Apps + get: + operationId: GetApp + parameters: + - description: The id of the App + in: path + name: id required: true + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/GithubInstallationCallbackReply' + $ref: '#/components/schemas/GetAppReply' description: A successful response. "400": content: @@ -5472,6 +5782,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5485,31 +5801,46 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Github callback for app installation + summary: Get App tags: - - organization - x-codegen-request-body-name: body - /v1/organizations: - post: - operationId: CreateOrganization + - Apps + patch: + operationId: UpdateApp2 + parameters: + - description: The id of the app to update. + in: path + name: id + required: true + schema: + type: string + - in: query + name: update_mask + schema: + type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/CreateOrganizationRequest' + $ref: '#/components/schemas/UpdateApp' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/CreateOrganizationReply' + $ref: '#/components/schemas/UpdateAppReply' description: A successful response. "400": content: @@ -5517,6 +5848,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5530,31 +5867,45 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Create organization + summary: Update App tags: - - organization - x-codegen-request-body-name: body - /v1/organizations/{id}: - delete: - operationId: DeleteOrganization + - Apps + x-codegen-request-body-name: app + put: + operationId: UpdateApp parameters: - - in: path + - description: The id of the app to update. + in: path name: id required: true schema: type: string + - in: query + name: app.name + schema: + type: string + - in: query + name: update_mask + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeleteOrganizationReply' + $ref: '#/components/schemas/UpdateAppReply' description: A successful response. "400": content: @@ -5562,6 +5913,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5575,19 +5932,34 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Delete an organization + summary: Update App tags: - - organization - get: - operationId: GetOrganization + - Apps + /v1/apps/{id}/pause: + post: + description: |- + App pause action is allowed for the following status: + - starting + - healthy + - degraded + - unhealthy + - resuming + operationId: PauseApp parameters: - - in: path + - description: The id of the app to pause. + in: path name: id required: true schema: @@ -5597,7 +5969,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/GetOrganizationReply' + $ref: '#/components/schemas/PauseAppReply' description: A successful response. "400": content: @@ -5605,6 +5977,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5618,39 +5996,40 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get organization + summary: Pause App tags: - - organization - patch: - operationId: UpdateOrganization2 + - Apps + /v1/apps/{id}/resume: + post: + description: |- + App resume action is allowed for the following status: + - paused + operationId: ResumeApp parameters: - - in: path + - description: The id of the app to resume. + in: path name: id required: true schema: type: string - - in: query - name: update_mask - schema: - type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/Organization' - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateOrganizationReply' + $ref: '#/components/schemas/ResumeAppReply' description: A successful response. "400": content: @@ -5658,6 +6037,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5671,40 +6056,56 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update organization + summary: Resume App tags: - - organization - x-codegen-request-body-name: organization - put: - operationId: UpdateOrganization + - Apps + /v1/secrets: + get: + operationId: ListSecrets parameters: - - in: path - name: id - required: true + - in: query + name: name schema: type: string - in: query - name: update_mask + name: limit schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/Organization' - required: true + - in: query + name: offset + schema: + type: string + - description: Filter by secret types + explode: true + in: query + name: types + schema: + items: + enum: + - SIMPLE + - REGISTRY + - MANAGED + type: string + type: array + style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateOrganizationReply' + $ref: '#/components/schemas/ListSecretsReply' description: A successful response. "400": content: @@ -5712,6 +6113,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5725,37 +6132,34 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update organization tags: - - organization - x-codegen-request-body-name: organization - /v1/organizations/{id}/deactivate: + - Secrets post: - operationId: DeactivateOrganization - parameters: - - in: path - name: id - required: true - schema: - type: string + operationId: CreateSecret requestBody: content: '*/*': schema: - type: object + $ref: '#/components/schemas/CreateSecret' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DeactivateOrganizationReply' + $ref: '#/components/schemas/CreateSecretReply' description: A successful response. "400": content: @@ -5763,6 +6167,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5776,37 +6186,36 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Deactivate an organization tags: - - organization - x-codegen-request-body-name: body - /v1/organizations/{id}/plan: - post: - operationId: UpdateOrganizationPlan + - Secrets + x-codegen-request-body-name: secret + /v1/secrets/{id}: + delete: + operationId: DeleteSecret parameters: - in: path name: id required: true schema: type: string - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/UpdateOrganizationPlan_request' - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpdateOrganizationPlanReply' + $ref: '#/components/schemas/DeleteSecretReply' description: A successful response. "400": content: @@ -5814,6 +6223,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5827,37 +6242,34 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Update organization plan tags: - - organization - x-codegen-request-body-name: body - /v1/organizations/{id}/reactivate: - post: - operationId: ReactivateOrganization + - Secrets + get: + operationId: GetSecret parameters: - in: path name: id required: true schema: type: string - requestBody: - content: - '*/*': - schema: - type: object - required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ReactivateOrganizationReply' + $ref: '#/components/schemas/GetSecretReply' description: A successful response. "400": content: @@ -5865,6 +6277,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5878,37 +6296,44 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Reactivate an organization tags: - - organization - x-codegen-request-body-name: body - /v1/organizations/{id}/signup_qualification: - post: - operationId: UpsertSignupQualification - parameters: - - in: path + - Secrets + patch: + operationId: UpdateSecret2 + parameters: + - in: path name: id required: true schema: type: string + - in: query + name: update_mask + schema: + type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/UpsertSignupQualification_request' + $ref: '#/components/schemas/Secret' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/UpsertSignupQualificationReply' + $ref: '#/components/schemas/UpdateSecretReply' description: A successful response. "400": content: @@ -5916,6 +6341,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -5929,42 +6360,45 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Upsert organization's signup qualification tags: - - organization - x-codegen-request-body-name: body - /v1/organizations/{id}/switch: - post: - operationId: SwitchOrganization + - Secrets + x-codegen-request-body-name: secret + put: + operationId: UpdateSecret parameters: - in: path name: id required: true schema: type: string - - description: Seon Fingerprint - in: header - name: seon-fp + - in: query + name: update_mask schema: type: string requestBody: content: '*/*': schema: - type: object + $ref: '#/components/schemas/Secret' required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/LoginReply' + $ref: '#/components/schemas/UpdateSecretReply' description: A successful response. "400": content: @@ -5972,51 +6406,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error - "403": - content: - '*/*': - schema: - $ref: '#/components/schemas/Error' - description: Returned when the user does not have permission to access the - resource. - "404": + "401": content: '*/*': schema: $ref: '#/components/schemas/Error' - description: Returned when the resource does not exist. - default: - content: - '*/*': - schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: Switch organization context - tags: - - organization - x-codegen-request-body-name: body - /v1/sso/canny: - post: - operationId: CannyAuth - requestBody: - content: - '*/*': - schema: - $ref: '#/components/schemas/CannyAuthRequest' - required: true - responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/CannyAuthReply' - description: A successful response. - "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/ErrorWithFields' - description: Validation error + description: Returned when the token is not valid. "403": content: '*/*': @@ -6030,6 +6425,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -6037,23 +6438,29 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - sso - x-codegen-request-body-name: body - /v1/sso/discourse: + - Secrets + x-codegen-request-body-name: secret + /v1/secrets/{id}/reveal: post: - operationId: DiscourseAuth + operationId: RevealSecret + parameters: + - in: path + name: id + required: true + schema: + type: string requestBody: content: '*/*': schema: - $ref: '#/components/schemas/DiscourseAuthRequest' + type: object required: true responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/DiscourseAuthReply' + $ref: '#/components/schemas/RevealSecretReply' description: A successful response. "400": content: @@ -6061,6 +6468,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6074,6 +6487,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -6081,40 +6500,48 @@ paths: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. tags: - - sso + - Secrets x-codegen-request-body-name: body - /v1/git/branches: + /v1/deployment_events: get: - operationId: ListBranches + operationId: ListDeploymentEvents parameters: - - description: (Optional) Filter on one repository. + - description: (Optional) Filter on deployment id in: query - name: repository_id + name: deployment_id schema: type: string - - description: |- - (Optional) Filter on branch name using a fuzzy search. - Repository filter is required to enable this filter. + - description: (Optional) Filter on deployment event types + explode: true in: query - name: name + name: types schema: - type: string - - description: (Optional) The number of items to return. + items: + type: string + type: array + style: form + - description: (Optional) The number of items to return in: query name: limit schema: type: string - - description: (Optional) The offset in the list of item to return. + - description: (Optional) The offset in the list of item to return in: query name: offset schema: type: string + - description: (Optional) Sorts the list in the ascending or the descending + order + in: query + name: order + schema: + type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/kgitproxy.ListBranchesReply' + $ref: '#/components/schemas/ListDeploymentEventsReply' description: A successful response. "400": content: @@ -6122,6 +6549,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6135,39 +6568,75 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: List Deployment events tags: - - Repositories - /v1/git/repositories: + - Deployments + /v1/deployments: get: - operationId: ListRepositories + operationId: ListDeployments parameters: - - description: (Optional) Filter on repository name using a fuzzy search. + - description: (Optional) Filter on application id in: query - name: name + name: app_id schema: type: string - - description: (Optional) The number of items to return. + - description: (Optional) Filter on service id + in: query + name: service_id + schema: + type: string + - description: (Optional) The number of items to return in: query name: limit schema: type: string - - description: (Optional) The offset in the list of item to return. + - description: (Optional) The offset in the list of item to return in: query name: offset schema: type: string + - description: (Optional) Filter on statuses + explode: true + in: query + name: statuses + schema: + items: + enum: + - PENDING + - PROVISIONING + - SCHEDULED + - CANCELING + - CANCELED + - ALLOCATING + - STARTING + - HEALTHY + - DEGRADED + - UNHEALTHY + - STOPPING + - STOPPED + - ERRORING + - ERROR + type: string + type: array + style: form responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/kgitproxy.ListRepositoriesReply' + $ref: '#/components/schemas/ListDeploymentsReply' description: A successful response. "400": content: @@ -6175,6 +6644,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6188,20 +6663,28 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: List Deployments tags: - - Repositories - /v1/git/sync/organization/{organization_id}: - post: - operationId: ResyncOrganization + - Deployments + /v1/deployments/{id}: + get: + operationId: GetDeployment parameters: - - in: path - name: organization_id + - description: The id of the deployment + in: path + name: id required: true schema: type: string @@ -6210,7 +6693,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/kgitproxy.ResyncOrganizationReply' + $ref: '#/components/schemas/GetDeploymentReply' description: A successful response. "400": content: @@ -6218,6 +6701,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6231,21 +6720,34 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. + summary: Get Deployment tags: - - Repositories - /v1/search: - get: - operationId: Search + - Deployments + /v1/deployments/{id}/cancel: + post: + description: |- + Deployment cancellation is allowed for the following status: + - pending + - provisioning + - scheduled + operationId: CancelDeployment parameters: - - description: (Optional) Search query - in: query - name: query + - description: The id of the deployment to cancel. + in: path + name: id + required: true schema: type: string responses: @@ -6253,7 +6755,7 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ksearch.SearchReply' + $ref: '#/components/schemas/CancelDeploymentReply' description: A successful response. "400": content: @@ -6261,6 +6763,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6274,19 +6782,39 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Search + summary: Cancel Deployment tags: - - Search - /v1/catalog/instances: + - Deployments + /v1/regional_deployment_events: get: - operationId: ListCatalogInstances + operationId: ListRegionalDeploymentEvents parameters: + - description: (Optional) Filter on regional deployment id + in: query + name: regional_deployment_id + schema: + type: string + - description: (Optional) Filter on regional deployment event types + explode: true + in: query + name: types + schema: + items: + type: string + type: array + style: form - description: (Optional) The number of items to return in: query name: limit @@ -6297,9 +6825,10 @@ paths: name: offset schema: type: string - - description: (Optional) A filter for instances + - description: (Optional) Sorts the list in the ascending or the descending + order in: query - name: id + name: order schema: type: string responses: @@ -6307,66 +6836,57 @@ paths: content: '*/*': schema: - $ref: '#/components/schemas/ListCatalogInstancesReply' + $ref: '#/components/schemas/ListRegionalDeploymentEventsReply' description: A successful response. - default: + "400": content: '*/*': schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: List Instance - tags: - - CatalogInstances - /v1/catalog/instances/{id}: - get: - operationId: GetCatalogInstance - parameters: - - description: The name of the instance - in: path - name: id - required: true - schema: - type: string - responses: - "200": + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": content: '*/*': schema: - $ref: '#/components/schemas/GetCatalogInstanceReply' - description: A successful response. - default: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": content: '*/*': schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: Get Instance - tags: - - CatalogInstances - /v1/catalog/datacenters: - get: - operationId: ListDatacenters - responses: - "200": + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": content: '*/*': schema: - $ref: '#/components/schemas/ListDatacentersReply' - description: A successful response. + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: List datacenters + summary: List Regional Deployment events tags: - - CatalogDatacenters - /v1/catalog/regions: + - RegionalDeployments + /v1/regional_deployments: get: - operationId: ListRegions + operationId: ListRegionalDeployments parameters: + - description: (Optional) Filter on deployment id + in: query + name: deployment_id + schema: + type: string - description: (Optional) The number of items to return in: query name: limit @@ -6377,107 +6897,84 @@ paths: name: offset schema: type: string - - description: (Optional) A filter for regions - in: query - name: id - schema: - type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/ListRegionsReply' + $ref: '#/components/schemas/ListRegionalDeploymentsReply' description: A successful response. - default: + "400": content: '*/*': schema: - $ref: '#/components/schemas/google.rpc.Status' - description: An unexpected error response. - summary: List Region - tags: - - CatalogRegions - /v1/catalog/regions/{id}: - get: - operationId: GetRegion - parameters: - - description: The name of the region - in: path - name: id - required: true - schema: - type: string - responses: - "200": + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": content: '*/*': schema: - $ref: '#/components/schemas/GetRegionReply' - description: A successful response. + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Get Region + summary: |- + Experimental: List regional deployments + Use at your own risk tags: - - CatalogRegions - /v1/streams/logs/tail: + - RegionalDeployments + /v1/regional_deployments/{id}: get: - operationId: TailLogs + operationId: GetRegionalDeployment parameters: - - in: query - name: type - schema: - type: string - - in: query - name: app_id - schema: - type: string - - in: query - name: service_id - schema: - type: string - - in: query - name: deployment_id - schema: - type: string - - in: query - name: regional_deployment_id - schema: - type: string - - in: query - name: instance_id - schema: - type: string - - in: query - name: stream - schema: - type: string - - in: query - name: start - schema: - type: string - - in: query - name: limit + - description: The id of the regional deployment + in: path + name: id + required: true schema: - format: int64 type: string responses: "200": content: '*/*': schema: - $ref: '#/components/schemas/Stream_result_of_LogEntry' - description: A successful response.(streaming responses) + $ref: '#/components/schemas/GetRegionalDeploymentReply' + description: A successful response. "400": content: '*/*': schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6491,21 +6988,142 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': schema: $ref: '#/components/schemas/google.rpc.Status' description: An unexpected error response. - summary: Tails logs + summary: |- + Experimental: Get regional deployment + Use at your own risk tags: - - Logs - /v1/streams/instances/exec: - get: - description: "This endpoint opens a websocket. Once open, all frames going through\ - \ the websocket should be formatted in JSON. Input frames should match the\ - \ format specified below. Output frames will match the response schema." - operationId: ExecCommand + - RegionalDeployments + /v1/quotas/capacity: + post: + operationId: ReviewOrganizationCapacity + requestBody: + content: + '*/*': + schema: + $ref: '#/components/schemas/ReviewOrganizationCapacityRequest' + required: true + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/ReviewOrganizationCapacityReply' + description: A successful response. + "400": + content: + '*/*': + schema: + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Review Organization Capacity + tags: + - Quotas + x-codegen-request-body-name: body + /v1/search: + get: + operationId: Search + parameters: + - description: (Optional) Search query + in: query + name: query + schema: + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/ksearch.SearchReply' + description: A successful response. + "400": + content: + '*/*': + schema: + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Search + tags: + - Search + /v1/streams/instances/exec: + get: + description: "This endpoint opens a websocket. Once open, all frames going through\ + \ the websocket should be formatted in JSON. Input frames should match the\ + \ format specified below. Output frames will match the response schema." + operationId: ExecCommand parameters: - description: ID of the resource to exec on. in: query @@ -6566,6 +7184,12 @@ paths: schema: $ref: '#/components/schemas/ErrorWithFields' description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6579,6 +7203,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -6588,6 +7218,94 @@ paths: summary: Exec Command tags: - Instances + /v1/streams/logs/tail: + get: + operationId: TailLogs + parameters: + - in: query + name: type + schema: + type: string + - in: query + name: app_id + schema: + type: string + - in: query + name: service_id + schema: + type: string + - in: query + name: deployment_id + schema: + type: string + - in: query + name: regional_deployment_id + schema: + type: string + - in: query + name: instance_id + schema: + type: string + - in: query + name: stream + schema: + type: string + - in: query + name: start + schema: + type: string + - in: query + name: limit + schema: + format: int64 + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/Stream_result_of_LogEntry' + description: A successful response.(streaming responses) + "400": + content: + '*/*': + schema: + $ref: '#/components/schemas/ErrorWithFields' + description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. + "403": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the user does not have permission to access the + resource. + "404": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Tails logs + tags: + - Logs /v1/streams/metrics: get: operationId: GetMetrics @@ -6650,7 +7368,13 @@ paths: '*/*': schema: $ref: '#/components/schemas/ErrorWithFields' - description: Validation error. + description: Validation error + "401": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned when the token is not valid. "403": content: '*/*': @@ -6664,6 +7388,12 @@ paths: schema: $ref: '#/components/schemas/Error' description: Returned when the resource does not exist. + "500": + content: + '*/*': + schema: + $ref: '#/components/schemas/Error' + description: Returned in case of server error. default: content: '*/*': @@ -6672,29 +7402,170 @@ paths: description: An unexpected error response. tags: - Metrics -components: - schemas: - GetMetricsReply.Metric: - example: - values: - - - values - - values - - - values - - values - labels: - key: labels - properties: - labels: - additionalProperties: - type: string - type: object - values: - items: - items: - description: TODO default missing array inner type to string - type: string - type: array - type: array + /v1/catalog/instances: + get: + operationId: ListCatalogInstances + parameters: + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) A filter for instances + in: query + name: id + schema: + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/ListCatalogInstancesReply' + description: A successful response. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: List Instance + tags: + - CatalogInstances + /v1/catalog/instances/{id}: + get: + operationId: GetCatalogInstance + parameters: + - description: The name of the instance + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/GetCatalogInstanceReply' + description: A successful response. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Get Instance + tags: + - CatalogInstances + /v1/catalog/regions: + get: + operationId: ListRegions + parameters: + - description: (Optional) The number of items to return + in: query + name: limit + schema: + type: string + - description: (Optional) The offset in the list of item to return + in: query + name: offset + schema: + type: string + - description: (Optional) A filter for regions + in: query + name: id + schema: + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/ListRegionsReply' + description: A successful response. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: List Region + tags: + - CatalogRegions + /v1/catalog/regions/{id}: + get: + operationId: GetRegion + parameters: + - description: The name of the region + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/GetRegionReply' + description: A successful response. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: Get Region + tags: + - CatalogRegions + /v1/catalog/datacenters: + get: + operationId: ListDatacenters + responses: + "200": + content: + '*/*': + schema: + $ref: '#/components/schemas/ListDatacentersReply' + description: A successful response. + default: + content: + '*/*': + schema: + $ref: '#/components/schemas/google.rpc.Status' + description: An unexpected error response. + summary: List datacenters + tags: + - CatalogDatacenters +components: + schemas: + GetMetricsReply.Metric: + example: + values: + - - values + - values + - - values + - values + labels: + key: labels + properties: + labels: + additionalProperties: + type: string + type: object + values: + items: + items: + description: TODO default missing array inner type to string + type: string + type: array + type: array type: object google.protobuf.Any: additionalProperties: @@ -6719,7 +7590,7 @@ components: type: string google.rpc.Status: example: - code: 0 + code: 6 details: - '@type': '@type' - '@type': '@type' @@ -6986,2919 +7857,1592 @@ components: $ref: '#/components/schemas/ErrorField' type: array type: object - ReviewOrganizationCapacityReply: - example: - has_capacity: true - properties: - has_capacity: - type: boolean - type: object - ReviewOrganizationCapacityRequest: - example: - plan: plan - properties: - plan: - type: string - type: object - GetInstanceReply: + ListOrganizationMembersReply: example: - instance: - regional_deployment_id: regional_deployment_id - created_at: 2000-01-23T04:56:07.000+00:00 - datacenter: datacenter - xyz_deployment_id: xyz_deployment_id - updated_at: 2000-01-23T04:56:07.000+00:00 + offset: 6 + members: + - joined_at: 2000-01-23T04:56:07.000+00:00 + role: null + user_id: user_id organization_id: organization_id - service_id: service_id - hypervisor: hypervisor - allocation_id: allocation_id - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 + organization: + name: name + id: id + plan: null + status: null id: id - region: region - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 + user: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + status: null + - joined_at: 2000-01-23T04:56:07.000+00:00 + role: null + user_id: user_id + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + id: id + user: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email status: null + limit: 0 + count: 1 properties: - instance: - $ref: '#/components/schemas/Instance' + members: + items: + $ref: '#/components/schemas/OrganizationMember' + title: The collection of organization members + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer type: object - Instance: - example: - regional_deployment_id: regional_deployment_id - created_at: 2000-01-23T04:56:07.000+00:00 - datacenter: datacenter - xyz_deployment_id: xyz_deployment_id - updated_at: 2000-01-23T04:56:07.000+00:00 + Organization.Status: + default: WARNING + enum: + - WARNING + - LOCKED + - ACTIVE + - DEACTIVATING + - DEACTIVATED + - DELETING + - DELETED + type: string + OrganizationMember: + example: + joined_at: 2000-01-23T04:56:07.000+00:00 + role: null + user_id: user_id organization_id: organization_id - service_id: service_id - hypervisor: hypervisor - allocation_id: allocation_id - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 + organization: + name: name + id: id + plan: null + status: null id: id - region: region - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 + user: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email status: null properties: id: type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time - type: string organization_id: type: string - app_id: - type: string - service_id: - type: string - regional_deployment_id: - type: string - allocation_id: - type: string - region: - type: string - datacenter: - type: string - hypervisor: - type: string - status: - $ref: '#/components/schemas/Instance.Status' - messages: - items: - type: string - type: array - started_at: - format: date-time + user_id: type: string - terminated_at: + joined_at: format: date-time type: string - xyz_deployment_id: - description: |- - WARNING: Please don't use the following attribute. - Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. - USE AT YOUR OWN RISK. - type: string + role: + $ref: '#/components/schemas/UserRole.Role' + status: + $ref: '#/components/schemas/OrganizationMember.Status' + user: + $ref: '#/components/schemas/PublicUser' + organization: + $ref: '#/components/schemas/PublicOrganization' type: object - Instance.Status: - default: ALLOCATING + OrganizationMember.Status: + default: INVALID enum: - - ALLOCATING - - STARTING - - HEALTHY - - UNHEALTHY - - STOPPING - - STOPPED - - ERROR + - INVALID + - ACTIVE + - DELETED type: string - InstanceEvent: + Plan: + default: hobby + enum: + - hobby + - starter + - startup + - business + - enterprise + - internal + - hobby23 + - no_plan + type: string + PublicOrganization: example: - metadata: "{}" - instance_id: instance_id - organization_id: organization_id + name: name id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 + plan: null + status: null properties: id: type: string - when: - format: date-time - type: string - organization_id: - type: string - instance_id: - type: string - type: - type: string - message: + name: type: string - metadata: - properties: {} - type: object + plan: + $ref: '#/components/schemas/Plan' + status: + $ref: '#/components/schemas/Organization.Status' type: object - InstanceListItem: + PublicUser: example: - regional_deployment_id: regional_deployment_id - created_at: 2000-01-23T04:56:07.000+00:00 - datacenter: datacenter - xyz_deployment_id: xyz_deployment_id - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - service_id: service_id - allocation_id: allocation_id - messages: - - messages - - messages + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id id: id - region: region - app_id: app_id - status: null + email: email properties: id: type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time - type: string - organization_id: - type: string - app_id: - type: string - service_id: - type: string - regional_deployment_id: + email: type: string - allocation_id: + name: type: string - region: + avatar_url: type: string - datacenter: + github_id: type: string - status: - $ref: '#/components/schemas/Instance.Status' - messages: - items: - type: string - type: array - xyz_deployment_id: - description: |- - WARNING: Please don't use the following attribute. - Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. - USE AT YOUR OWN RISK. + github_user: type: string type: object - ListInstanceEventsReply: + RemoveOrganizationMemberReply: example: - offset: 6 - limit: 0 - count: 1 - events: - - metadata: "{}" - instance_id: instance_id - organization_id: organization_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - - metadata: "{}" - instance_id: instance_id + member: + joined_at: 2000-01-23T04:56:07.000+00:00 + role: null + user_id: user_id organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - order: order + user: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + status: null properties: - events: - items: - $ref: '#/components/schemas/InstanceEvent' - title: The collection of events - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - order: - title: The order in the request - type: string + member: + $ref: '#/components/schemas/OrganizationMember' type: object - ListInstancesReply: - example: - offset: 6 - instances: - - regional_deployment_id: regional_deployment_id - created_at: 2000-01-23T04:56:07.000+00:00 - datacenter: datacenter - xyz_deployment_id: xyz_deployment_id - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - service_id: service_id - allocation_id: allocation_id - messages: - - messages - - messages - id: id - region: region - app_id: app_id - status: null - - regional_deployment_id: regional_deployment_id - created_at: 2000-01-23T04:56:07.000+00:00 - datacenter: datacenter - xyz_deployment_id: xyz_deployment_id - updated_at: 2000-01-23T04:56:07.000+00:00 + UserRole.Role: + default: INVALID + enum: + - INVALID + - OWNER + type: string + AcceptOrganizationInvitationReply: + example: + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - service_id: service_id - allocation_id: allocation_id - messages: - - messages - - messages + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email id: id - region: region - app_id: app_id + email: email + invitee_id: invitee_id status: null - limit: 0 - count: 1 - order: order + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - instances: - items: - $ref: '#/components/schemas/InstanceListItem' - title: The collection of instances - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - order: - title: The order in the request - type: string + invitation: + $ref: '#/components/schemas/OrganizationInvitation' type: object - AutoRelease: + Action: + default: signin + enum: + - signin + - signup + - register + type: string + CannyAuthReply: example: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository + token: token properties: - groups: - items: - $ref: '#/components/schemas/AutoRelease.Group' - type: array + token: + type: string type: object - AutoRelease.Group: + CannyAuthRequest: + type: object + CreateAccountRequest: + description: Create new account example: - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository + email: john@snow.com + password: '...' properties: - name: + email: type: string - repository: + password: type: string - git_ref: - title: "A git ref to track (.e.g: refs/tags/ or refs/heads/" + name: type: string - latest_sha: - title: The last hash that was resolved (used to avoid triggering releases - when things haven't changed) + captcha: type: string - title: Configuration extracted from the latest deployment in this deployment_group + required: + - email + - password + title: Create new account type: object - BuildpackBuilder: + CreateOrganizationReply: example: - privileged: true - run_command: run_command - build_command: build_command + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - build_command: - title: "A command used to override the build command, run after all build\ - \ steps" - type: string - run_command: - title: A command used to override the default run command + organization: + $ref: '#/components/schemas/Organization' + type: object + CreateOrganizationRequest: + example: + name: name + properties: + name: type: string - privileged: - title: A flag to run the container in privileged mode - type: boolean type: object - CreateService: + DeactivateOrganizationReply: example: - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email name: name - app_id: app_id + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - app_id: - type: string - definition: - $ref: '#/components/schemas/DeploymentDefinition' + organization: + $ref: '#/components/schemas/Organization' type: object - CreateServiceReply: + DeclineOrganizationInvitationReply: example: - service: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - name: name - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - active_deployment_id: active_deployment_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - latest_deployment_id: latest_deployment_id + email: email + invitee_id: invitee_id status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - service: - $ref: '#/components/schemas/Service' + invitation: + $ref: '#/components/schemas/OrganizationInvitation' type: object - DatabaseDeploymentMetadata: + DeleteOrganizationReply: example: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - neon_postgres: - $ref: '#/components/schemas/NeonPostgresDatabaseDeploymentMetadata' + organization: + $ref: '#/components/schemas/Organization' type: object - DatabaseSource: + DiscourseAuthReply: example: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 + sig: sig + sso: sso properties: - neon_postgres: - $ref: '#/components/schemas/NeonPostgresDatabase' + sso: + type: string + sig: + type: string type: object - DeleteServiceReply: + DiscourseAuthRequest: + example: + sig: sig + payload: payload + properties: + payload: + type: string + sig: + type: string type: object - Deployment: + GetGithubInstallationReply: example: - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 + indexing_status: null + indexed_repositories: 0 + avatar_url: avatar_url + installation_url: installation_url + installed_at: 2000-01-23T04:56:07.000+00:00 + installation_id: installation_id + total_repositories: 6 status: null + suspended_at: 2000-01-23T04:56:07.000+00:00 properties: - id: - type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time + installation_id: type: string - allocated_at: - format: date-time + installation_url: type: string - started_at: - format: date-time + avatar_url: type: string - succeeded_at: + status: + $ref: '#/components/schemas/kgitproxy.GithubInstallation.Status' + installed_at: format: date-time type: string - terminated_at: + suspended_at: format: date-time type: string - organization_id: - type: string - app_id: - type: string - service_id: - type: string - parent_id: - type: string - child_id: - type: string - status: - $ref: '#/components/schemas/Deployment.Status' - metadata: - $ref: '#/components/schemas/DeploymentMetadata' - definition: - $ref: '#/components/schemas/DeploymentDefinition' - messages: - items: - type: string - type: array - provisioning_info: - $ref: '#/components/schemas/DeploymentProvisioningInfo' - database_info: - $ref: '#/components/schemas/DeploymentDatabaseInfo' - version: - format: uint64 - type: string - deployment_group: - type: string - type: object - Deployment.Status: - default: PENDING - enum: - - PENDING - - PROVISIONING - - SCHEDULED - - CANCELING - - CANCELED - - ALLOCATING - - STARTING - - HEALTHY - - DEGRADED - - UNHEALTHY - - STOPPING - - STOPPED - - ERRORING - - ERROR - type: string - DeploymentDatabaseInfo: - example: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour - properties: - neon_postgres: - $ref: '#/components/schemas/DeploymentNeonPostgresDatabaseInfo' + indexing_status: + $ref: '#/components/schemas/kgitproxy.IndexingStatus' + indexed_repositories: + format: int64 + type: integer + total_repositories: + format: int64 + type: integer type: object - DeploymentDefinition: + GetOAuthOptionsReply: + description: A list of providers which you can use for single sign-on. example: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name + oauth_providers: + - id: id + state: state + url: url + - id: id + state: state + url: url properties: - name: - type: string - type: - $ref: '#/components/schemas/DeploymentDefinition.Type' - routes: - items: - $ref: '#/components/schemas/DeploymentRoute' - type: array - ports: - items: - $ref: '#/components/schemas/DeploymentPort' - type: array - env: - items: - $ref: '#/components/schemas/DeploymentEnv' - type: array - regions: - items: - type: string - type: array - scalings: - items: - $ref: '#/components/schemas/DeploymentScaling' - type: array - instance_types: - items: - $ref: '#/components/schemas/DeploymentInstanceType' - type: array - health_checks: + oauth_providers: items: - $ref: '#/components/schemas/DeploymentHealthCheck' + $ref: '#/components/schemas/OAuthProvider' type: array - skip_cache: - type: boolean - docker: - $ref: '#/components/schemas/DockerSource' - git: - $ref: '#/components/schemas/GitSource' - database: - $ref: '#/components/schemas/DatabaseSource' type: object - DeploymentDefinition.Type: - default: INVALID - enum: - - INVALID - - WEB - - WORKER - - DATABASE - type: string - DeploymentEnv: + GetOrganizationReply: example: - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - properties: - scopes: - items: - type: string - type: array - key: - type: string - value: - type: string - secret: - type: string - type: object - DeploymentHealthCheck: - example: - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - grace_period: - format: int64 - title: "An optional initial period in seconds to wait for the instance to\ - \ become healthy, default is 5s" - type: integer - interval: - format: int64 - title: "An optional period in seconds between two health checks, default\ - \ is 60s" - type: integer - restart_limit: - format: int64 - title: "An optional number of consecutive failures before attempting to\ - \ restart the service, default is 3" - type: integer - timeout: - format: int64 - title: "An optional maximum time to wait in seconds before considering the\ - \ check as a failure, default is 5s" - type: integer - tcp: - $ref: '#/components/schemas/TCPHealthCheck' - http: - $ref: '#/components/schemas/HTTPHealthCheck' + organization: + $ref: '#/components/schemas/Organization' type: object - DeploymentInstanceType: + GetUserOrganizationInvitationReply: example: - scopes: - - scopes - - scopes - type: type + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - scopes: - items: - type: string - type: array - type: - type: string + invitation: + $ref: '#/components/schemas/OrganizationInvitation' type: object - DeploymentMetadata: - example: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - properties: - trigger: - $ref: '#/components/schemas/TriggerDeploymentMetadata' - database: - $ref: '#/components/schemas/DatabaseDeploymentMetadata' + GithubInstallationCallbackReply: type: object - DeploymentNeonPostgresDatabaseInfo: + GithubInstallationCallbackRequest: example: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour + setup_action: setup_action + installation_id: installation_id + state: state properties: - active_time_seconds: - format: int64 - type: string - compute_time_seconds: - format: int64 - type: string - written_data_bytes: - format: int64 + installation_id: type: string - data_transfer_bytes: - format: int64 + setup_action: type: string - data_storage_bytes_hour: - format: int64 + state: type: string - server_host: + type: object + GithubInstallationReply: + example: + app_name: app_name + state: state + app_id: app_id + url: url + properties: + app_name: + title: The github app name type: string - server_port: + app_id: format: int64 - type: integer - endpoint_state: - type: string - endpoint_last_active: - format: date-time - type: string - default_branch_id: - type: string - default_branch_name: + title: The github app id type: string - default_branch_state: + url: + title: The url to start the installation flow type: string - default_branch_logical_size: - format: int64 + state: + title: "The state required by the protocol, it is only valid 10 minutes\ + \ and encodes information about the type of flow" type: string - roles: - items: - $ref: '#/components/schemas/DeploymentNeonPostgresDatabaseInfoRole' - type: array type: object - DeploymentNeonPostgresDatabaseInfoRole: + GithubInstallationRequest: example: - secret_id: secret_id - name: name + metadata: metadata properties: - name: - type: string - secret_id: + metadata: + title: A small (limited to 400 characters) string of arbitrary metadata + which will be encoded in the state type: string type: object - DeploymentPort: + InviteUserRequest: example: - protocol: protocol - port: 6 + name: name + message: message + email: email properties: - port: - format: int64 - type: integer - protocol: - title: "One of http, http2, tcp" + email: + type: string + name: + type: string + message: type: string type: object - DeploymentProvisioningInfo: + ListUserOrganizationInvitationsReply: example: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 + offset: 6 + invitations: + - role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + - role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id status: null - sha: sha + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + limit: 0 + count: 1 properties: - sha: - description: The git sha for this build (we resolve the reference at the - start of the build). - type: string - image: - description: The docker image built as a result of this build. - type: string - stages: - description: Some info about the build. + invitations: items: - $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage' + $ref: '#/components/schemas/OrganizationInvitation' + title: The collection of organization invitations type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer type: object - DeploymentProvisioningInfo.Stage: + LoginReply: example: - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null + token: + id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... + expires: 2022-09-08T14:00:00Z + user_id: 996d7822-6b58-11e9-956f-32001b70f000 + organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 properties: - name: - type: string - status: - $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.Status' - messages: - items: - type: string - type: array - started_at: - format: date-time - type: string - finished_at: - format: date-time - type: string - build_attempts: - items: - $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.BuildAttempt' - type: array + token: + $ref: '#/components/schemas/Token' type: object - DeploymentProvisioningInfo.Stage.BuildAttempt: + ManageReply: example: - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null + url: url properties: - id: - format: int64 - type: integer - status: - $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.Status' - messages: - items: - type: string - type: array - started_at: - format: date-time - type: string - finished_at: - format: date-time + url: type: string type: object - DeploymentProvisioningInfo.Stage.Status: - default: UNKNOWN - enum: - - UNKNOWN - - RUNNING - - FAILED - - COMPLETED - - ABORTED - type: string - DeploymentRoute: + NextInvoiceReply: example: - path: path - port: 0 + stripe_invoice: "{}" properties: - port: - format: int64 - type: integer - path: - type: string + stripe_invoice: + properties: {} + type: object type: object - DeploymentScaling: + OAuthCallbackReply: example: - min: 1 - max: 5 - scopes: - - scopes - - scopes + token: + id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... + expires: 2022-09-08T14:00:00Z + user_id: 996d7822-6b58-11e9-956f-32001b70f000 + organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 properties: - scopes: - items: - type: string - type: array - min: - format: int64 - type: integer - max: - format: int64 - type: integer + token: + $ref: '#/components/schemas/Token' type: object - DesiredDeployment: + OAuthCallbackRequest: example: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids + code: code + state: state properties: - groups: - items: - $ref: '#/components/schemas/DesiredDeployment.Group' - type: array + state: + title: The state created at the origin of the OAuth flow + type: string + code: + title: The code returned by the OAuth provider + type: string type: object - DesiredDeployment.Group: + OAuthProvider: example: - name: name - deployment_ids: - - deployment_ids - - deployment_ids + id: id + state: state + url: url properties: - name: + id: + title: "The name of the provider (.e.g github, google)" + type: string + url: + title: The URL to call to initiate the OAuth flow + type: string + state: + title: "The OAuth state required by the protocol, it is only valid 10 minutes\ + \ and encodes information about the type of flow" type: string - deployment_ids: - items: - type: string - type: array type: object - DockerBuilder: + Organization: example: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - dockerfile: - title: A path to the Dockerfile + id: type: string - entrypoint: - items: - type: string - title: The docker ENTRYPOINT - type: array - command: - title: The docker CMD + address1: type: string - args: - items: - type: string - title: The docker CMD args - type: array - target: - title: The target for multi-stage builds + address2: type: string - privileged: - title: A flag to run the container in privileged mode - type: boolean - type: object - DockerSource: - example: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - properties: - image: + city: type: string - command: + postal_code: type: string - args: - items: - type: string - type: array - image_registry_secret: + state: type: string - entrypoint: - items: - type: string - type: array - privileged: - title: A flag to run the container in privileged mode + country: + type: string + company: type: boolean - type: object - GetServiceReply: - example: - service: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - active_deployment_id: active_deployment_id - id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - latest_deployment_id: latest_deployment_id - status: null - properties: - service: - $ref: '#/components/schemas/Service' - type: object - GitDeploymentMetadata: - example: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - properties: - provider: - $ref: '#/components/schemas/GitDeploymentMetadata.Provider' - repository: + vat_number: type: string - branch: + billing_name: type: string - sha: + billing_email: type: string - message: + name: type: string - sender_username: + plan: + $ref: '#/components/schemas/Plan' + plan_updated_at: + format: date-time type: string - sender_avatar_url: + has_payment_method: + type: boolean + subscription_id: type: string - sender_profile_url: + current_subscription_id: + type: string + latest_subscription_id: type: string + signup_qualification: + properties: {} + type: object + status: + $ref: '#/components/schemas/Organization.Status' + status_message: + $ref: '#/components/schemas/OrganizationDetailedStatus' + deactivation_reason: + $ref: '#/components/schemas/Organization.DeactivationReason' + verified: + type: boolean + qualifies_for_hobby23: + type: boolean + title: Represent an Organization type: object - GitDeploymentMetadata.Provider: - default: UNKNOWN + Organization.DeactivationReason: + default: INVALID enum: - - UNKNOWN - - GITHUB + - INVALID + - REQUESTED_BY_OWNER + - SUBSCRIPTION_TERMINATION + - LOCKED_BY_ADMIN type: string - GitSource: + OrganizationDetailedStatus: + default: NEW + enum: + - NEW + - EMAIL_NOT_VALIDATED + - BILLING_INFO_MISSING + - LOCKED + - PAYMENT_FAILURE + - VALID + - PENDING_VERIFICATION + - VERIFICATION_FAILED + - REVIEWING_ACCOUNT + - PLAN_UPGRADE_REQUIRED + type: string + OrganizationInvitation: example: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - repository: - description: "A url to a git repository (contains the provider as well)\ - \ .e.g: github.com/koyeb/test." - type: string - branch: - title: A git branch that will be tracked for new commits and deployments - will be created + id: type: string - tag: - title: A git tag that should be built + email: type: string - sha: - title: "A git commit that should be built (useful for pinning to a commit,\ - \ this will always be set when a deployment is created by a code push)" + role: + $ref: '#/components/schemas/UserRole.Role' + status: + $ref: '#/components/schemas/OrganizationInvitation.Status' + expires_at: + format: date-time type: string - build_command: - title: "A command used to override the build command, run after all build\ - \ steps —\_deprecated, use buildpack.build_command instead" + organization_id: type: string - run_command: - title: "A command used to override the default run command - deprecated,\ - \ use buildpack.run_command instead" + organization: + $ref: '#/components/schemas/PublicOrganization' + invitee_id: type: string - no_deploy_on_push: - title: A flag to disable a new deployment when a push event is detected - type: boolean - workdir: - title: A subdirectory to use as the build directory + invitee: + $ref: '#/components/schemas/PublicUser' + inviter_id: type: string - buildpack: - $ref: '#/components/schemas/BuildpackBuilder' - docker: - $ref: '#/components/schemas/DockerBuilder' + inviter: + $ref: '#/components/schemas/PublicUser' type: object - HTTPHeader: + OrganizationInvitation.Status: + default: INVALID + enum: + - INVALID + - PENDING + - ACCEPTED + - REFUSED + - EXPIRED + type: string + ReactivateOrganizationReply: example: - value: value - key: key + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - key: - type: string - value: - type: string + organization: + $ref: '#/components/schemas/Organization' type: object - HTTPHealthCheck: + ResendEmailValidationReply: + type: object + ResendEmailValidationRequest: + type: object + ResetPasswordReply: + type: object + ResetPasswordRequest: example: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 + email: john@snow.com properties: - port: - format: int64 - title: "The port to use to perform the health check, must be declared in\ - \ the ports section" - type: integer - path: - title: The path to use to perform the HTTP health check - type: string - method: - title: "An optional HTTP method to use to perform the health check, default\ - \ is GET" + email: type: string - headers: - items: - $ref: '#/components/schemas/HTTPHeader' - title: "An optional list of HTTP headers to provide when performing the\ - \ request, default is empty" - type: array type: object - ListServiceEventsReply: + Token: example: - offset: 6 - limit: 0 - count: 1 - events: - - metadata: "{}" - organization_id: organization_id - service_id: service_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - - metadata: "{}" - organization_id: organization_id - service_id: service_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - order: order + id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... + expires: 2022-09-08T14:00:00Z + user_id: 996d7822-6b58-11e9-956f-32001b70f000 + organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 properties: - events: - items: - $ref: '#/components/schemas/ServiceEvent' - title: The collection of events - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - order: - title: The order in the request + id: + type: string + user_id: + type: string + organization_id: + type: string + expires_at: + format: date-time type: string type: object - ListServicesReply: + UpdateOrganizationPlanReply: example: - offset: 6 - limit: 0 - count: 1 - services: - - created_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email name: name - messages: - - messages - - messages - active_deployment_id: active_deployment_id + latest_subscription_id: latest_subscription_id + company: true id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - latest_deployment_id: latest_deployment_id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id + properties: + organization: + $ref: '#/components/schemas/Organization' + type: object + UpdateOrganizationReply: + example: + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email name: name - messages: - - messages - - messages - active_deployment_id: active_deployment_id + latest_subscription_id: latest_subscription_id + company: true id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - latest_deployment_id: latest_deployment_id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id status: null properties: - services: - items: - $ref: '#/components/schemas/ServiceListItem' - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer + organization: + $ref: '#/components/schemas/Organization' type: object - NeonPostgresDatabase: + UpdatePasswordRequest: example: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 + id: '...' + password: '...' properties: - pg_version: - format: int64 - type: integer - region: + id: + type: string + password: type: string - roles: - items: - $ref: '#/components/schemas/NeonPostgresDatabase.NeonRole' - type: array - databases: - items: - $ref: '#/components/schemas/NeonPostgresDatabase.NeonDatabase' - type: array type: object - NeonPostgresDatabase.NeonDatabase: - example: - owner: owner - name: name + UpdateUserRequest.UserUpdateBody: properties: - name: + id: type: string - owner: + email: + type: string + current_password: + type: string + password: + type: string + newsletter_subscribed: + type: boolean + name: type: string type: object - NeonPostgresDatabase.NeonRole: + UpsertSignupQualificationReply: example: - name: name - secret: secret + organization: + status_message: null + country: country + qualifies_for_hobby23: true + address2: address2 + city: city + address1: address1 + vat_number: vat_number + plan_updated_at: 2000-01-23T04:56:07.000+00:00 + has_payment_method: true + verified: true + billing_name: billing_name + subscription_id: subscription_id + signup_qualification: "{}" + deactivation_reason: null + billing_email: billing_email + name: name + latest_subscription_id: latest_subscription_id + company: true + id: id + state: state + postal_code: postal_code + plan: null + current_subscription_id: current_subscription_id + status: null properties: - name: - type: string - secret: - type: string + organization: + $ref: '#/components/schemas/Organization' type: object - NeonPostgresDatabaseDeploymentMetadata: + User: example: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords + id: 78352123-a06f-4ec2-81ed-27a056725385 + email: john@snow.com + name: John Snow + avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 + is_admin: false + is_test: true + two_factor_authentication: false + last_login: 0001-01-01T00:00:00Z + last_login_id: 10.1.1.1 + updated_at: 0001-01-01T00:00:00Z + created_at: 0001-01-01T00:00:00Z + newsletter_subscribed: true + email_validated: true properties: - reset_role_passwords: + id: + type: string + email: + type: string + avatar_url: + type: string + two_factor_authentication: + type: boolean + last_login: + format: date-time + type: string + last_login_ip: + type: string + updated_at: + format: date-time + type: string + created_at: + format: date-time + type: string + newsletter_subscribed: + type: boolean + github_id: + type: string + github_user: + type: string + flags: items: - type: string + $ref: '#/components/schemas/UserFlags' type: array + name: + type: string + email_validated: + type: boolean + title: Represent a User type: object - PauseServiceReply: - type: object - RedeployReply: + UserFlags: + default: ADMIN + enum: + - ADMIN + - TEST + - RESTRICTED + - ACTIVE + - BETA + title: |- + - ADMIN: A user is an admin user + - TEST: A user is a test user + - RESTRICTED: Whether this account as restricted access + - ACTIVE: Whether this account is active + - BETA: Account in beta program + type: string + UserReply: example: - deployment: - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 - status: null - properties: - deployment: - $ref: '#/components/schemas/Deployment' - type: object - RedeployRequest.Info: - properties: - deployment_group: - type: string - sha: - type: string - use_cache: - type: boolean - type: object - ResumeServiceReply: - type: object - Service: - example: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - active_deployment_id: active_deployment_id - id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - latest_deployment_id: latest_deployment_id - status: null - properties: - id: - type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time - type: string - started_at: - format: date-time - type: string - succeeded_at: - format: date-time - type: string - paused_at: - format: date-time - type: string - resumed_at: - format: date-time - type: string - terminated_at: - format: date-time - type: string - name: - type: string - type: - $ref: '#/components/schemas/Service.Type' - organization_id: - type: string - app_id: - type: string - status: - $ref: '#/components/schemas/Service.Status' - messages: - items: - type: string - type: array - version: - format: uint64 - type: string - active_deployment_id: - type: string - latest_deployment_id: - type: string - state: - $ref: '#/components/schemas/ServiceState' + user: + id: 78352123-a06f-4ec2-81ed-27a056725385 + email: john@snow.com + name: John Snow + avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 + is_admin: false + is_test: true + two_factor_authentication: false + last_login: 0001-01-01T00:00:00Z + last_login_id: 10.1.1.1 + updated_at: 0001-01-01T00:00:00Z + created_at: 0001-01-01T00:00:00Z + newsletter_subscribed: true + email_validated: true + properties: + user: + $ref: '#/components/schemas/User' type: object - Service.Status: - default: STARTING + Empty: + type: object + kgitproxy.GithubInstallation.Status: + default: INVALID enum: - - STARTING - - HEALTHY - - DEGRADED - - UNHEALTHY - - DELETING + - INVALID + - INSTALLED + - SUSPENDED - DELETED - - PAUSING - - PAUSED - - RESUMING type: string - Service.Type: - default: INVALID_TYPE + kgitproxy.IndexingStatus: + default: INVALID_INDEXING_STATUS enum: - - INVALID_TYPE - - WEB - - WORKER - - DATABASE + - INVALID_INDEXING_STATUS + - NOT_STARTED + - IN_PROGRESS + - COMPLETED type: string - ServiceEvent: + CreateOrganizationInvitationReply: example: - metadata: "{}" - organization_id: organization_id - service_id: service_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - id: - type: string - when: - format: date-time - type: string - organization_id: - type: string - service_id: - type: string - type: - type: string - message: - type: string - metadata: - properties: {} - type: object + invitation: + $ref: '#/components/schemas/OrganizationInvitation' type: object - ServiceListItem: + CreateOrganizationInvitationRequest: example: - created_at: 2000-01-23T04:56:07.000+00:00 - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - active_deployment_id: active_deployment_id - id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - latest_deployment_id: latest_deployment_id - status: null + email: email properties: - id: - type: string - name: - type: string - type: - $ref: '#/components/schemas/Service.Type' - organization_id: - type: string - app_id: - type: string - updated_at: - format: date-time - type: string - created_at: - format: date-time - type: string - status: - $ref: '#/components/schemas/Service.Status' - messages: - items: - type: string - type: array - version: - format: uint64 - title: A version updated whenever this state changes (useful for caching) - type: string - state: - $ref: '#/components/schemas/ServiceState' - active_deployment_id: - type: string - latest_deployment_id: + email: + title: The email of the person to invite type: string type: object - ServiceState: + DeleteOrganizationInvitationReply: + type: object + GetOrganizationInvitationReply: example: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + properties: + invitation: + $ref: '#/components/schemas/OrganizationInvitation' + type: object + ListOrganizationInvitationsReply: + example: + offset: 6 + invitations: + - role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url name: name - git_ref: git_ref - repository: repository - properties: - desired_deployment: - $ref: '#/components/schemas/DesiredDeployment' - auto_release: - $ref: '#/components/schemas/AutoRelease' - type: object - TCPHealthCheck: - example: - port: 3 + github_id: github_id + id: id + email: email + - role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + limit: 0 + count: 1 properties: - port: + invitations: + items: + $ref: '#/components/schemas/OrganizationInvitation' + title: The collection of organization invitations + type: array + limit: format: int64 - title: "The port to use to perform the health check, must be declared in\ - \ the ports section" - type: integer - type: object - TriggerDeploymentMetadata: - example: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - properties: - type: - $ref: '#/components/schemas/TriggerDeploymentMetadata.TriggerType' - actor: - $ref: '#/components/schemas/TriggerDeploymentMetadata.ActorType' - git: - $ref: '#/components/schemas/GitDeploymentMetadata' - type: object - TriggerDeploymentMetadata.ActorType: - default: UNKNOWN_ACTOR - enum: - - UNKNOWN_ACTOR - - USER - - SYSTEM - type: string - TriggerDeploymentMetadata.TriggerType: - default: UNKNOWN_TYPE - enum: - - UNKNOWN_TYPE - - GIT - - RESUME - type: string - UpdateService: - example: - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer + type: object + ResendOrganizationInvitationReply: + example: + invitation: + role: null + expires_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + organization: + name: name + id: id + plan: null + status: null + inviter_id: inviter_id + inviter: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email + id: id + email: email + invitee_id: invitee_id + status: null + invitee: + github_user: github_user + avatar_url: avatar_url + name: name + github_id: github_id + id: id + email: email properties: - definition: - $ref: '#/components/schemas/DeploymentDefinition' - metadata: - $ref: '#/components/schemas/DeploymentMetadata' + invitation: + $ref: '#/components/schemas/OrganizationInvitation' type: object - UpdateServiceReply: + LoginRequest: example: - service: + email: john@snow.com + password: '...' + properties: + email: + title: User email + type: string + password: + title: User password + type: string + organization_id: + title: (Optional) Login into this organization + type: string + type: object + LogoutReply: + type: object + ConfirmPaymentAuthorizationReply: + example: + payment_method: + authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - type: null + type: type + card_last_digits: card_last_digits version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 + card_expiration_year: 6 + card_fingerprint: card_fingerprint updated_at: 2000-01-23T04:56:07.000+00:00 + provider: provider + card_country: card_country organization_id: organization_id - name: name - started_at: 2000-01-23T04:56:07.000+00:00 + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 messages: - messages - messages - active_deployment_id: active_deployment_id id: id - state: - desired_deployment: - groups: - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - - name: name - deployment_ids: - - deployment_ids - - deployment_ids - auto_release: - groups: - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - - latest_sha: latest_sha - name: name - git_ref: git_ref - repository: repository - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - latest_deployment_id: latest_deployment_id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret status: null properties: - service: - $ref: '#/components/schemas/Service' + payment_method: + $ref: '#/components/schemas/PaymentMethod' type: object - CancelDeploymentReply: + CreatePaymentAuthorizationReply: + example: + payment_method: + authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + type: type + card_last_digits: card_last_digits + version: version + card_expiration_year: 6 + card_fingerprint: card_fingerprint + updated_at: 2000-01-23T04:56:07.000+00:00 + provider: provider + card_country: card_country + organization_id: organization_id + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 + messages: + - messages + - messages + id: id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + status: null + properties: + payment_method: + $ref: '#/components/schemas/PaymentMethod' type: object - DeploymentEvent: + CreatePaymentAuthorizationRequest: + type: object + DeletePaymentMethodReply: + type: object + GetPaymentMethodReply: example: - metadata: "{}" - organization_id: organization_id - id: id - deployment_id: deployment_id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 + payment_method: + authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + type: type + card_last_digits: card_last_digits + version: version + card_expiration_year: 6 + card_fingerprint: card_fingerprint + updated_at: 2000-01-23T04:56:07.000+00:00 + provider: provider + card_country: card_country + organization_id: organization_id + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 + messages: + - messages + - messages + id: id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + status: null properties: - id: - type: string - when: - format: date-time - type: string - organization_id: - type: string - deployment_id: - type: string - type: - type: string - message: - type: string - metadata: - properties: {} - type: object + payment_method: + $ref: '#/components/schemas/PaymentMethod' + type: object + ListPaymentMethodsReply: + example: + payment_methods: + - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + type: type + card_last_digits: card_last_digits + version: version + card_expiration_year: 6 + card_fingerprint: card_fingerprint + updated_at: 2000-01-23T04:56:07.000+00:00 + provider: provider + card_country: card_country + organization_id: organization_id + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 + messages: + - messages + - messages + id: id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + status: null + - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + type: type + card_last_digits: card_last_digits + version: version + card_expiration_year: 6 + card_fingerprint: card_fingerprint + updated_at: 2000-01-23T04:56:07.000+00:00 + provider: provider + card_country: card_country + organization_id: organization_id + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 + messages: + - messages + - messages + id: id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + status: null + offset: 5 + limit: 1 + count: 5 + properties: + payment_methods: + items: + $ref: '#/components/schemas/PaymentMethod' + title: The collection of payment methods + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer type: object - DeploymentListItem: + PaymentMethod: example: - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null + authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id + authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 created_at: 2000-01-23T04:56:07.000+00:00 + type: type + card_last_digits: card_last_digits version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 + card_expiration_year: 6 + card_fingerprint: card_fingerprint updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id + provider: provider + card_country: card_country organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 + authorization_verified_at: 2000-01-23T04:56:07.000+00:00 + card_funding: card_funding + card_brand: card_brand + card_expiration_month: 0 + messages: + - messages + - messages + id: id + stripe_payment_method_id: stripe_payment_method_id + authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret status: null properties: id: @@ -9909,811 +9453,932 @@ components: updated_at: format: date-time type: string - allocated_at: + version: + format: uint64 + type: string + organization_id: + type: string + type: + type: string + provider: + type: string + status: + $ref: '#/components/schemas/PaymentMethod.Status' + messages: + items: + type: string + type: array + stripe_payment_method_id: + type: string + authorization_verified_at: format: date-time type: string - started_at: + authorization_canceled_at: format: date-time type: string - succeeded_at: + authorization_stripe_payment_intent_id: + type: string + authorization_stripe_payment_intent_client_secret: + type: string + card_brand: + type: string + card_country: + type: string + card_funding: + type: string + card_fingerprint: + type: string + card_last_digits: + type: string + card_expiration_month: + format: int64 + type: integer + card_expiration_year: + format: int64 + type: integer + type: object + PaymentMethod.Status: + default: INVALID + enum: + - INVALID + - CREATED + - AUTHORIZED + - DECLINED + - CANCELED + - EXPIRED + - UNCHECKED + type: string + CreateCredential: + example: + organization_id: organization_id + name: name + description: description + type: null + properties: + name: + title: Credential name + type: string + description: + title: Credential description + type: string + type: + $ref: '#/components/schemas/Credential.Type' + organization_id: + title: Organization id for user credential + type: string + type: object + CreateCredentialReply: + example: + credential: + updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + properties: + credential: + $ref: '#/components/schemas/Credential' + type: object + Credential: + example: + updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + properties: + id: + type: string + type: + $ref: '#/components/schemas/Credential.Type' + name: + type: string + token: + type: string + description: + type: string + user_id: + type: string + organization_id: + type: string + updated_at: format: date-time type: string - terminated_at: + created_at: format: date-time type: string - organization_id: + type: object + Credential.Type: + default: INVALID + enum: + - INVALID + - USER + - ORGANIZATION + type: string + DeleteCredentialReply: + type: object + GetCredentialReply: + example: + credential: + updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + properties: + credential: + $ref: '#/components/schemas/Credential' + type: object + ListCredentialsReply: + example: + offset: 6 + credentials: + - updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + - updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + limit: 0 + count: 1 + properties: + credentials: + items: + $ref: '#/components/schemas/Credential' + type: array + limit: + format: int64 + type: integer + offset: + format: int64 + type: integer + count: + format: int64 + type: integer + type: object + UpdateCredentialReply: + example: + credential: + updated_at: 2000-01-23T04:56:07.000+00:00 + user_id: user_id + organization_id: organization_id + name: name + description: description + created_at: 2000-01-23T04:56:07.000+00:00 + id: id + type: null + token: token + properties: + credential: + $ref: '#/components/schemas/Credential' + type: object + ConfirmOrganizationActionReply: + type: object + GetQuotasReply: + example: + quotas: + instance_types: + - instance_types + - instance_types + services_by_app: services_by_app + regions: + - regions + - regions + service_provisioning_concurrency: service_provisioning_concurrency + max_organization_members: max_organization_members + max_instances_by_type: + key: max_instances_by_type + domains: domains + memory_mb: memory_mb + services: services + apps: apps + properties: + quotas: + $ref: '#/components/schemas/Quotas' + type: object + Quotas: + example: + instance_types: + - instance_types + - instance_types + services_by_app: services_by_app + regions: + - regions + - regions + service_provisioning_concurrency: service_provisioning_concurrency + max_organization_members: max_organization_members + max_instances_by_type: + key: max_instances_by_type + domains: domains + memory_mb: memory_mb + services: services + apps: apps + properties: + apps: + format: int64 type: string - app_id: + services: + format: int64 type: string - service_id: + domains: + format: int64 type: string - parent_id: + services_by_app: + format: int64 type: string - child_id: + service_provisioning_concurrency: + format: int64 type: string - status: - $ref: '#/components/schemas/Deployment.Status' - metadata: - $ref: '#/components/schemas/DeploymentMetadata' - definition: - $ref: '#/components/schemas/DeploymentDefinition' - messages: + memory_mb: + format: int64 + type: string + instance_types: items: type: string type: array - provisioning_info: - $ref: '#/components/schemas/DeploymentProvisioningInfo' - database_info: - $ref: '#/components/schemas/DeploymentDatabaseInfo' - version: - format: uint64 - type: string - deployment_group: + regions: + items: + type: string + type: array + max_organization_members: + format: int64 type: string + max_instances_by_type: + additionalProperties: + format: int64 + type: string + type: object type: object - GetDeploymentReply: + DeleteUserReply: example: - deployment: - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null + user: + id: 78352123-a06f-4ec2-81ed-27a056725385 + email: john@snow.com + name: John Snow + avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 + is_admin: false + is_test: true + two_factor_authentication: false + last_login: 0001-01-01T00:00:00Z + last_login_id: 10.1.1.1 + updated_at: 0001-01-01T00:00:00Z + created_at: 0001-01-01T00:00:00Z + newsletter_subscribed: true + email_validated: true + properties: + user: + $ref: '#/components/schemas/User' + type: object + GetSubscriptionReply: + example: + subscription: + payment_failure: + error_message: error_message + attempt_count: attempt_count + error_reason: error_reason + error_type: error_type + stripe_sdk: + client_secret_key: client_secret_key + raw_json: raw_json + error_code: error_code + failed_at: 2000-01-23T04:56:07.000+00:00 + next_attempt: 2000-01-23T04:56:07.000+00:00 + redirect_url: redirect_url + payment_method_required: true + amount_paid: amount_paid + amount_remaining: amount_remaining + terminate_at: 2000-01-23T04:56:07.000+00:00 + stripe_pending_invoice_id: stripe_pending_invoice_id + canceled_at: 2000-01-23T04:56:07.000+00:00 created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name + current_period_end: 2000-01-23T04:56:07.000+00:00 + version: version + amount_payable: amount_payable + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + stripe_subscription_id: stripe_subscription_id + messages: + - messages + - messages + currency: currency id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour - app_id: app_id terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 + current_period_start: 2000-01-23T04:56:07.000+00:00 status: null + has_pending_update: true properties: - deployment: - $ref: '#/components/schemas/Deployment' + subscription: + $ref: '#/components/schemas/Subscription' type: object - ListDeploymentEventsReply: + Subscription: + example: + payment_failure: + error_message: error_message + attempt_count: attempt_count + error_reason: error_reason + error_type: error_type + stripe_sdk: + client_secret_key: client_secret_key + raw_json: raw_json + error_code: error_code + failed_at: 2000-01-23T04:56:07.000+00:00 + next_attempt: 2000-01-23T04:56:07.000+00:00 + redirect_url: redirect_url + payment_method_required: true + amount_paid: amount_paid + amount_remaining: amount_remaining + terminate_at: 2000-01-23T04:56:07.000+00:00 + stripe_pending_invoice_id: stripe_pending_invoice_id + canceled_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + current_period_end: 2000-01-23T04:56:07.000+00:00 + version: version + amount_payable: amount_payable + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + stripe_subscription_id: stripe_subscription_id + messages: + - messages + - messages + currency: currency + id: id + terminated_at: 2000-01-23T04:56:07.000+00:00 + current_period_start: 2000-01-23T04:56:07.000+00:00 + status: null + has_pending_update: true + properties: + id: + type: string + created_at: + format: date-time + type: string + updated_at: + format: date-time + type: string + version: + format: uint64 + type: string + organization_id: + type: string + stripe_subscription_id: + type: string + status: + $ref: '#/components/schemas/Subscription.Status' + messages: + items: + type: string + type: array + has_pending_update: + type: boolean + stripe_pending_invoice_id: + type: string + terminate_at: + format: date-time + type: string + canceled_at: + format: date-time + type: string + terminated_at: + format: date-time + type: string + current_period_start: + format: date-time + type: string + current_period_end: + format: date-time + type: string + currency: + type: string + amount_payable: + format: int64 + type: string + amount_paid: + format: int64 + type: string + amount_remaining: + format: int64 + type: string + payment_failure: + $ref: '#/components/schemas/Subscription.PaymentFailure' + type: object + Subscription.PaymentFailure: + example: + error_message: error_message + attempt_count: attempt_count + error_reason: error_reason + error_type: error_type + stripe_sdk: + client_secret_key: client_secret_key + raw_json: raw_json + error_code: error_code + failed_at: 2000-01-23T04:56:07.000+00:00 + next_attempt: 2000-01-23T04:56:07.000+00:00 + redirect_url: redirect_url + payment_method_required: true + properties: + failed_at: + format: date-time + type: string + next_attempt: + format: date-time + type: string + attempt_count: + format: int64 + type: string + error_code: + type: string + error_reason: + type: string + error_type: + type: string + error_message: + type: string + payment_method_required: + type: boolean + redirect_url: + type: string + stripe_sdk: + $ref: '#/components/schemas/Subscription.PaymentFailure.StripeSDK' + type: object + Subscription.PaymentFailure.StripeSDK: + example: + client_secret_key: client_secret_key + raw_json: raw_json + properties: + client_secret_key: + type: string + raw_json: + type: string + type: object + Subscription.Status: + default: INVALID + enum: + - INVALID + - CREATED + - ACTIVE + - WARNING + - URGENT + - CANCELING + - CANCELED + - TERMINATING + - TERMINATED + type: string + kgitproxy.Branch: + example: + provider: null + organization_id: organization_id + name: name + repository_id: repository_id + id: id + is_default: true + is_protected: true + properties: + id: + type: string + organization_id: + type: string + repository_id: + type: string + name: + type: string + is_default: + type: boolean + is_protected: + type: boolean + provider: + $ref: '#/components/schemas/kgitproxy.RepositoryProvider' + type: object + kgitproxy.GitHubRepository: + example: + github_id: github_id + properties: + github_id: + type: string + type: object + kgitproxy.ListBranchesReply: example: offset: 6 limit: 0 count: 1 - events: - - metadata: "{}" + branches: + - provider: null organization_id: organization_id + name: name + repository_id: repository_id id: id - deployment_id: deployment_id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - - metadata: "{}" + is_default: true + is_protected: true + - provider: null organization_id: organization_id + name: name + repository_id: repository_id id: id - deployment_id: deployment_id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - order: order + is_default: true + is_protected: true properties: - events: + branches: + description: The collection of branches. items: - $ref: '#/components/schemas/DeploymentEvent' - title: The collection of events + $ref: '#/components/schemas/kgitproxy.Branch' type: array limit: + description: The limit in the request. format: int64 - title: The limit in the request type: integer offset: + description: The offset in the request. format: int64 - title: The offset in the request type: integer count: + description: The total number of items. format: int64 - title: The total number of items type: integer - order: - title: The order in the request - type: string type: object - ListDeploymentsReply: + kgitproxy.ListRepositoriesReply: example: - deployments: - - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null - created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id + offset: 6 + repositories: + - is_private: true + github: + github_id: github_id + last_push_date: 2000-01-23T04:56:07.000+00:00 + provider: null organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name + is_disabled: true + name: name + description: description + default_branch: default_branch + id: id + url: url + - is_private: true + github: + github_id: github_id + last_push_date: 2000-01-23T04:56:07.000+00:00 + provider: null + organization_id: organization_id + is_disabled: true + name: name + description: description + default_branch: default_branch + id: id + url: url + limit: 0 + count: 1 + properties: + repositories: + description: The collection of repositories. + items: + $ref: '#/components/schemas/kgitproxy.Repository' + type: array + limit: + description: The limit in the request. + format: int64 + type: integer + offset: + description: The offset in the request. + format: int64 + type: integer + count: + description: The total number of items. + format: int64 + type: integer + type: object + kgitproxy.Repository: + example: + is_private: true + github: + github_id: github_id + last_push_date: 2000-01-23T04:56:07.000+00:00 + provider: null + organization_id: organization_id + is_disabled: true + name: name + description: description + default_branch: default_branch + id: id + url: url + properties: + id: + type: string + organization_id: + type: string + name: + type: string + url: + type: string + description: + type: string + is_private: + type: boolean + is_disabled: + type: boolean + default_branch: + type: string + provider: + $ref: '#/components/schemas/kgitproxy.RepositoryProvider' + last_push_date: + format: date-time + type: string + github: + $ref: '#/components/schemas/kgitproxy.GitHubRepository' + type: object + kgitproxy.RepositoryProvider: + default: INVALID_PROVIDER + enum: + - INVALID_PROVIDER + - GITHUB + type: string + kgitproxy.ResyncOrganizationReply: + type: object + GetInstanceReply: + example: + instance: + regional_deployment_id: regional_deployment_id + created_at: 2000-01-23T04:56:07.000+00:00 + datacenter: datacenter + xyz_deployment_id: xyz_deployment_id + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + service_id: service_id + hypervisor: hypervisor + allocation_id: allocation_id + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour + region: region app_id: app_id terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 status: null - - metadata: - database: - neon_postgres: - reset_role_passwords: - - reset_role_passwords - - reset_role_passwords - trigger: - actor: null - git: - sender_username: sender_username - provider: null - repository: repository - message: message - branch: branch - sha: sha - sender_avatar_url: sender_avatar_url - sender_profile_url: sender_profile_url - type: null + properties: + instance: + $ref: '#/components/schemas/Instance' + type: object + Instance: + example: + regional_deployment_id: regional_deployment_id + created_at: 2000-01-23T04:56:07.000+00:00 + datacenter: datacenter + xyz_deployment_id: xyz_deployment_id + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + service_id: service_id + hypervisor: hypervisor + allocation_id: allocation_id + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: id + region: region + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + status: null + properties: + id: + type: string + created_at: + format: date-time + type: string + updated_at: + format: date-time + type: string + organization_id: + type: string + app_id: + type: string + service_id: + type: string + regional_deployment_id: + type: string + allocation_id: + type: string + region: + type: string + datacenter: + type: string + hypervisor: + type: string + status: + $ref: '#/components/schemas/Instance.Status' + messages: + items: + type: string + type: array + started_at: + format: date-time + type: string + terminated_at: + format: date-time + type: string + xyz_deployment_id: + description: |- + WARNING: Please don't use the following attribute. + Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. + USE AT YOUR OWN RISK. + type: string + type: object + Instance.Status: + default: ALLOCATING + enum: + - ALLOCATING + - STARTING + - HEALTHY + - UNHEALTHY + - STOPPING + - STOPPED + - ERROR + type: string + InstanceEvent: + example: + metadata: "{}" + instance_id: instance_id + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + properties: + id: + type: string + when: + format: date-time + type: string + organization_id: + type: string + instance_id: + type: string + type: + type: string + message: + type: string + metadata: + properties: {} + type: object + type: object + InstanceListItem: + example: + regional_deployment_id: regional_deployment_id + created_at: 2000-01-23T04:56:07.000+00:00 + datacenter: datacenter + xyz_deployment_id: xyz_deployment_id + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + service_id: service_id + allocation_id: allocation_id + messages: + - messages + - messages + id: id + region: region + app_id: app_id + status: null + properties: + id: + type: string + created_at: + format: date-time + type: string + updated_at: + format: date-time + type: string + organization_id: + type: string + app_id: + type: string + service_id: + type: string + regional_deployment_id: + type: string + allocation_id: + type: string + region: + type: string + datacenter: + type: string + status: + $ref: '#/components/schemas/Instance.Status' + messages: + items: + type: string + type: array + xyz_deployment_id: + description: |- + WARNING: Please don't use the following attribute. + Koyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice. + USE AT YOUR OWN RISK. + type: string + type: object + ListInstanceEventsReply: + example: + offset: 6 + limit: 0 + count: 1 + events: + - metadata: "{}" + instance_id: instance_id + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + - metadata: "{}" + instance_id: instance_id + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + order: order + properties: + events: + items: + $ref: '#/components/schemas/InstanceEvent' + title: The collection of events + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer + order: + title: The order in the request + type: string + type: object + ListInstancesReply: + example: + offset: 6 + instances: + - regional_deployment_id: regional_deployment_id created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 + datacenter: datacenter + xyz_deployment_id: xyz_deployment_id updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id organization_id: organization_id service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 + allocation_id: allocation_id + messages: + - messages + - messages + id: id + region: region + app_id: app_id + status: null + - regional_deployment_id: regional_deployment_id + created_at: 2000-01-23T04:56:07.000+00:00 + datacenter: datacenter + xyz_deployment_id: xyz_deployment_id + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + service_id: service_id + allocation_id: allocation_id messages: - messages - messages - definition: - instance_types: - - scopes: - - scopes - - scopes - type: type - - scopes: - - scopes - - scopes - type: type - regions: - - regions - - regions - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - - scopes: - - scopes - - scopes - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - database: - neon_postgres: - databases: - - owner: owner - name: name - - owner: owner - name: name - roles: - - name: name - secret: secret - - name: name - secret: secret - region: region - pg_version: 4 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - scalings: - - min: 1 - max: 5 - scopes: - - scopes - - scopes - - min: 1 - max: 5 - scopes: - - scopes - - scopes - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name id: id - database_info: - neon_postgres: - endpoint_state: endpoint_state - endpoint_last_active: 2000-01-23T04:56:07.000+00:00 - server_host: server_host - roles: - - secret_id: secret_id - name: name - - secret_id: secret_id - name: name - written_data_bytes: written_data_bytes - data_transfer_bytes: data_transfer_bytes - default_branch_state: default_branch_state - active_time_seconds: active_time_seconds - default_branch_logical_size: default_branch_logical_size - default_branch_name: default_branch_name - server_port: 6 - default_branch_id: default_branch_id - compute_time_seconds: compute_time_seconds - data_storage_bytes_hour: data_storage_bytes_hour + region: region app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 status: null - offset: 6 limit: 0 count: 1 + order: order properties: - deployments: + instances: items: - $ref: '#/components/schemas/DeploymentListItem' - title: The collection of deployments + $ref: '#/components/schemas/InstanceListItem' + title: The collection of instances type: array limit: format: int64 @@ -10727,887 +10392,1252 @@ components: format: int64 title: The total number of items type: integer + order: + title: The order in the request + type: string type: object - AzureContainerRegistryConfiguration: + AutoRelease: example: - password: password - registry_name: registry_name - username: username + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository properties: - registry_name: + groups: + items: + $ref: '#/components/schemas/AutoRelease.Group' + type: array + type: object + AutoRelease.Group: + example: + latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + properties: + name: type: string - username: + repository: type: string - password: + git_ref: + title: "A git ref to track (.e.g: refs/tags/ or refs/heads/" + type: string + latest_sha: + title: The last hash that was resolved (used to avoid triggering releases + when things haven't changed) type: string + title: Configuration extracted from the latest deployment in this deployment_group type: object - CreateSecret: + BuildpackBuilder: example: - gcp_container_registry: - keyfile_content: keyfile_content - url: url - github_registry: - password: password - username: username - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username - name: name - azure_container_registry: - password: password - registry_name: registry_name - username: username - type: null - value: value - docker_hub_registry: - password: password - username: username - digital_ocean_registry: - password: password - username: username + privileged: true + run_command: run_command + build_command: build_command properties: - name: + build_command: + title: "A command used to override the build command, run after all build\ + \ steps" type: string - type: - $ref: '#/components/schemas/SecretType' - value: + run_command: + title: A command used to override the default run command type: string - docker_hub_registry: - $ref: '#/components/schemas/DockerHubRegistryConfiguration' - private_registry: - $ref: '#/components/schemas/PrivateRegistryConfiguration' - digital_ocean_registry: - $ref: '#/components/schemas/DigitalOceanRegistryConfiguration' - github_registry: - $ref: '#/components/schemas/GitHubRegistryConfiguration' - gitlab_registry: - $ref: '#/components/schemas/GitLabRegistryConfiguration' - gcp_container_registry: - $ref: '#/components/schemas/GCPContainerRegistryConfiguration' - azure_container_registry: - $ref: '#/components/schemas/AzureContainerRegistryConfiguration' + privileged: + title: A flag to run the container in privileged mode + type: boolean type: object - CreateSecretReply: + CreateService: example: - secret: - created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url - updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username - organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 name: name - id: id - value: value - docker_hub_registry: - password: password - username: username - properties: - secret: - $ref: '#/components/schemas/Secret' - type: object - DatabaseRolePassword: - example: - password: password - username: username - properties: - username: - type: string - password: - type: string - type: object - DeleteSecretReply: - type: object - DigitalOceanRegistryConfiguration: - example: - password: password - username: username - properties: - username: - type: string - password: - type: string - type: object - DockerHubRegistryConfiguration: - example: - password: password - username: username - properties: - username: - type: string - password: - type: string - type: object - GCPContainerRegistryConfiguration: - example: - keyfile_content: keyfile_content - url: url + app_id: app_id properties: - keyfile_content: - type: string - url: + app_id: type: string + definition: + $ref: '#/components/schemas/DeploymentDefinition' type: object - GetSecretReply: + CreateServiceReply: example: - secret: + service: created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username + resumed_at: 2000-01-23T04:56:07.000+00:00 type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + active_deployment_id: active_deployment_id id: id - value: value - docker_hub_registry: - password: password - username: username - properties: - secret: - $ref: '#/components/schemas/Secret' - type: object - GitHubRegistryConfiguration: - example: - password: password - username: username + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + latest_deployment_id: latest_deployment_id + status: null properties: - username: - type: string - password: - type: string + service: + $ref: '#/components/schemas/Service' type: object - GitLabRegistryConfiguration: + DatabaseDeploymentMetadata: example: - password: password - username: username + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords properties: - username: - type: string - password: - type: string + neon_postgres: + $ref: '#/components/schemas/NeonPostgresDatabaseDeploymentMetadata' type: object - ListSecretsReply: - example: - offset: 6 - limit: 0 - count: 1 - secrets: - - created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username - type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url - updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username - organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username - name: name - id: id - value: value - docker_hub_registry: - password: password - username: username - - created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username - type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url - updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username - organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username - name: name - id: id - value: value - docker_hub_registry: - password: password - username: username + DatabaseSource: + example: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 properties: - secrets: - items: - $ref: '#/components/schemas/Secret' - type: array - limit: - format: int64 - type: integer - offset: - format: int64 - type: integer - count: - format: int64 - type: integer + neon_postgres: + $ref: '#/components/schemas/NeonPostgresDatabase' type: object - PrivateRegistryConfiguration: + DeleteServiceReply: + type: object + Deployment: example: - password: password - url: url - username: username + metadata: + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + id: id + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 + status: null properties: - username: + id: type: string - password: + created_at: + format: date-time type: string - url: + updated_at: + format: date-time + type: string + allocated_at: + format: date-time + type: string + started_at: + format: date-time + type: string + succeeded_at: + format: date-time + type: string + terminated_at: + format: date-time + type: string + organization_id: + type: string + app_id: + type: string + service_id: + type: string + parent_id: + type: string + child_id: + type: string + status: + $ref: '#/components/schemas/Deployment.Status' + metadata: + $ref: '#/components/schemas/DeploymentMetadata' + definition: + $ref: '#/components/schemas/DeploymentDefinition' + messages: + items: + type: string + type: array + provisioning_info: + $ref: '#/components/schemas/DeploymentProvisioningInfo' + database_info: + $ref: '#/components/schemas/DeploymentDatabaseInfo' + version: + format: uint64 + type: string + deployment_group: type: string type: object - RevealSecretReply: + Deployment.Status: + default: PENDING + enum: + - PENDING + - PROVISIONING + - SCHEDULED + - CANCELING + - CANCELED + - ALLOCATING + - STARTING + - HEALTHY + - DEGRADED + - UNHEALTHY + - STOPPING + - STOPPED + - ERRORING + - ERROR + type: string + DeploymentDatabaseInfo: example: - value: "{}" + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour properties: - value: - type: object + neon_postgres: + $ref: '#/components/schemas/DeploymentNeonPostgresDatabaseInfo' type: object - Secret: + DeploymentDefinition: example: - created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url - updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username - organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 name: name - id: id - value: value - docker_hub_registry: - password: password - username: username properties: - id: - type: string name: type: string - organization_id: - type: string type: - $ref: '#/components/schemas/SecretType' - updated_at: - format: date-time - type: string - created_at: - format: date-time - type: string - value: - type: string - docker_hub_registry: - $ref: '#/components/schemas/DockerHubRegistryConfiguration' - private_registry: - $ref: '#/components/schemas/PrivateRegistryConfiguration' - digital_ocean_registry: - $ref: '#/components/schemas/DigitalOceanRegistryConfiguration' - github_registry: - $ref: '#/components/schemas/GitHubRegistryConfiguration' - gitlab_registry: - $ref: '#/components/schemas/GitLabRegistryConfiguration' - gcp_container_registry: - $ref: '#/components/schemas/GCPContainerRegistryConfiguration' - azure_container_registry: - $ref: '#/components/schemas/AzureContainerRegistryConfiguration' - database_role_password: - $ref: '#/components/schemas/DatabaseRolePassword' + $ref: '#/components/schemas/DeploymentDefinition.Type' + routes: + items: + $ref: '#/components/schemas/DeploymentRoute' + type: array + ports: + items: + $ref: '#/components/schemas/DeploymentPort' + type: array + env: + items: + $ref: '#/components/schemas/DeploymentEnv' + type: array + regions: + items: + type: string + type: array + scalings: + items: + $ref: '#/components/schemas/DeploymentScaling' + type: array + instance_types: + items: + $ref: '#/components/schemas/DeploymentInstanceType' + type: array + health_checks: + items: + $ref: '#/components/schemas/DeploymentHealthCheck' + type: array + skip_cache: + type: boolean + docker: + $ref: '#/components/schemas/DockerSource' + git: + $ref: '#/components/schemas/GitSource' + database: + $ref: '#/components/schemas/DatabaseSource' type: object - SecretType: - default: SIMPLE + DeploymentDefinition.Type: + default: INVALID enum: - - SIMPLE - - REGISTRY - - MANAGED + - INVALID + - WEB + - WORKER + - DATABASE type: string - UpdateSecretReply: + DeploymentEnv: example: - secret: - created_at: 2000-01-23T04:56:07.000+00:00 - azure_container_registry: - password: password - registry_name: registry_name - username: username - type: null - digital_ocean_registry: - password: password - username: username - gcp_container_registry: - keyfile_content: keyfile_content - url: url - updated_at: 2000-01-23T04:56:07.000+00:00 - github_registry: - password: password - username: username - database_role_password: - password: password - username: username - organization_id: organization_id - private_registry: - password: password - url: url - username: username - gitlab_registry: - password: password - username: username - name: name - id: id - value: value - docker_hub_registry: - password: password - username: username + scopes: + - scopes + - scopes + secret: secret + value: value + key: key properties: + scopes: + items: + type: string + type: array + key: + type: string + value: + type: string secret: - $ref: '#/components/schemas/Secret' + type: string type: object - CreateDomain: + DeploymentHealthCheck: example: - name: name - type: null - app_id: app_id + tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 properties: - name: - type: string + grace_period: + format: int64 + title: "An optional initial period in seconds to wait for the instance to\ + \ become healthy, default is 5s" + type: integer + interval: + format: int64 + title: "An optional period in seconds between two health checks, default\ + \ is 60s" + type: integer + restart_limit: + format: int64 + title: "An optional number of consecutive failures before attempting to\ + \ restart the service, default is 3" + type: integer + timeout: + format: int64 + title: "An optional maximum time to wait in seconds before considering the\ + \ check as a failure, default is 5s" + type: integer + tcp: + $ref: '#/components/schemas/TCPHealthCheck' + http: + $ref: '#/components/schemas/HTTPHealthCheck' + type: object + DeploymentInstanceType: + example: + scopes: + - scopes + - scopes + type: type + properties: + scopes: + items: + type: string + type: array type: - $ref: '#/components/schemas/Domain.Type' - app_id: - title: to auto-attach to an app. Optional type: string type: object - CreateDomainReply: + DeploymentMetadata: example: - domain: - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null properties: - domain: - $ref: '#/components/schemas/Domain' - type: object - DeleteDomainReply: - type: object - Domain: - example: - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null + trigger: + $ref: '#/components/schemas/TriggerDeploymentMetadata' + database: + $ref: '#/components/schemas/DatabaseDeploymentMetadata' + type: object + DeploymentNeonPostgresDatabaseInfo: + example: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour properties: - id: + active_time_seconds: + format: int64 type: string - organization_id: + compute_time_seconds: + format: int64 type: string - name: + written_data_bytes: + format: int64 type: string - created_at: - format: date-time + data_transfer_bytes: + format: int64 type: string - updated_at: - format: date-time + data_storage_bytes_hour: + format: int64 type: string - status: - $ref: '#/components/schemas/Domain.Status' - type: - $ref: '#/components/schemas/Domain.Type' - app_id: + server_host: type: string - deployment_group: + server_port: + format: int64 + type: integer + endpoint_state: type: string - verified_at: + endpoint_last_active: format: date-time type: string - intended_cname: + default_branch_id: type: string - messages: + default_branch_name: + type: string + default_branch_state: + type: string + default_branch_logical_size: + format: int64 + type: string + roles: items: - type: string + $ref: '#/components/schemas/DeploymentNeonPostgresDatabaseInfoRole' type: array - version: - format: uint64 + type: object + DeploymentNeonPostgresDatabaseInfoRole: + example: + secret_id: secret_id + name: name + properties: + name: + type: string + secret_id: type: string type: object - Domain.Status: - default: PENDING - enum: - - PENDING - - ACTIVE - - ERROR - - DELETING - - DELETED - type: string - Domain.Type: - default: AUTOASSIGNED - enum: - - AUTOASSIGNED - - CUSTOM - title: "- AUTOASSIGNED: Domain like -.koyeb.app" - type: string - GetDomainReply: + DeploymentPort: example: - domain: - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null + protocol: protocol + port: 6 properties: - domain: - $ref: '#/components/schemas/Domain' + port: + format: int64 + type: integer + protocol: + title: "One of http, http2, tcp" + type: string type: object - ListDomainsReply: + DeploymentProvisioningInfo: example: - offset: 6 - limit: 0 - count: 1 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null name: name messages: - messages - messages - id: id - app_id: app_id + started_at: 2000-01-23T04:56:07.000+00:00 status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null name: name messages: - messages - messages - id: id - app_id: app_id + started_at: 2000-01-23T04:56:07.000+00:00 status: null + sha: sha properties: - domains: + sha: + description: The git sha for this build (we resolve the reference at the + start of the build). + type: string + image: + description: The docker image built as a result of this build. + type: string + stages: + description: Some info about the build. items: - $ref: '#/components/schemas/Domain' + $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage' type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - type: object - RefreshDomainStatusReply: - type: object - UpdateDomain: - example: - app_id: app_id - properties: - app_id: - title: To attach or detach from an app - type: string - type: object - UpdateDomainReply: - example: - domain: - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - properties: - domain: - $ref: '#/components/schemas/Domain' type: object - App: - example: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name + DeploymentProvisioningInfo.Stage: + example: + finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 messages: - messages - messages - id: id - app_id: app_id + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name + - finished_at: 2000-01-23T04:56:07.000+00:00 messages: - messages - messages - id: id - app_id: app_id + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 status: null - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id name: name - started_at: 2000-01-23T04:56:07.000+00:00 messages: - messages - messages - id: id - terminated_at: 2000-01-23T04:56:07.000+00:00 + started_at: 2000-01-23T04:56:07.000+00:00 status: null properties: - id: - type: string name: type: string - organization_id: - type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time - type: string + status: + $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.Status' + messages: + items: + type: string + type: array started_at: format: date-time type: string - succeeded_at: + finished_at: format: date-time type: string - paused_at: + build_attempts: + items: + $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.BuildAttempt' + type: array + type: object + DeploymentProvisioningInfo.Stage.BuildAttempt: + example: + finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + properties: + id: + format: int64 + type: integer + status: + $ref: '#/components/schemas/DeploymentProvisioningInfo.Stage.Status' + messages: + items: + type: string + type: array + started_at: format: date-time type: string - resumed_at: + finished_at: format: date-time type: string - terminated_at: - format: date-time + type: object + DeploymentProvisioningInfo.Stage.Status: + default: UNKNOWN + enum: + - UNKNOWN + - RUNNING + - FAILED + - COMPLETED + - ABORTED + type: string + DeploymentRoute: + example: + path: path + port: 0 + properties: + port: + format: int64 + type: integer + path: type: string - status: - $ref: '#/components/schemas/App.Status' - messages: + type: object + DeploymentScaling: + example: + min: 1 + max: 5 + scopes: + - scopes + - scopes + properties: + scopes: items: type: string type: array - version: - format: uint64 - type: string - domains: + min: + format: int64 + type: integer + max: + format: int64 + type: integer + type: object + DesiredDeployment: + example: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + properties: + groups: items: - $ref: '#/components/schemas/Domain' + $ref: '#/components/schemas/DesiredDeployment.Group' type: array type: object - App.Status: - default: STARTING - enum: - - STARTING - - HEALTHY - - DEGRADED - - UNHEALTHY - - DELETING - - DELETED - - PAUSING - - PAUSED - - RESUMING - type: string - AppEvent: + DesiredDeployment.Group: example: - metadata: "{}" - organization_id: organization_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - app_id: app_id + name: name + deployment_ids: + - deployment_ids + - deployment_ids properties: - id: - type: string - when: - format: date-time - type: string - organization_id: + name: type: string - app_id: + deployment_ids: + items: + type: string + type: array + type: object + DockerBuilder: + example: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + properties: + dockerfile: + title: A path to the Dockerfile type: string - type: + entrypoint: + items: + type: string + title: The docker ENTRYPOINT + type: array + command: + title: The docker CMD type: string - message: + args: + items: + type: string + title: The docker CMD args + type: array + target: + title: The target for multi-stage builds type: string - metadata: - properties: {} - type: object + privileged: + title: A flag to run the container in privileged mode + type: boolean type: object - AppListItem: + DockerSource: example: - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - created_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - messages: - - messages - - messages - id: id - status: null + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command properties: - id: - type: string - name: - type: string - organization_id: - type: string - updated_at: - format: date-time + image: type: string - created_at: - format: date-time + command: type: string - domains: + args: items: - $ref: '#/components/schemas/Domain' + type: string type: array - status: - $ref: '#/components/schemas/App.Status' - messages: + image_registry_secret: + type: string + entrypoint: items: type: string type: array + privileged: + title: A flag to run the container in privileged mode + type: boolean type: object - CreateApp: - example: - name: name - properties: - name: - type: string - type: object - CreateAppReply: + GetServiceReply: example: - app: + service: created_at: 2000-01-23T04:56:07.000+00:00 resumed_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null + type: null version: version succeeded_at: 2000-01-23T04:56:07.000+00:00 paused_at: 2000-01-23T04:56:07.000+00:00 @@ -11618,69 +11648,172 @@ components: messages: - messages - messages + active_deployment_id: active_deployment_id id: id + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + app_id: app_id terminated_at: 2000-01-23T04:56:07.000+00:00 + latest_deployment_id: latest_deployment_id status: null properties: - app: - $ref: '#/components/schemas/App' + service: + $ref: '#/components/schemas/Service' type: object - DeleteAppReply: + GitDeploymentMetadata: + example: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + properties: + provider: + $ref: '#/components/schemas/GitDeploymentMetadata.Provider' + repository: + type: string + branch: + type: string + sha: + type: string + message: + type: string + sender_username: + type: string + sender_avatar_url: + type: string + sender_profile_url: + type: string type: object - GetAppReply: + GitDeploymentMetadata.Provider: + default: UNKNOWN + enum: + - UNKNOWN + - GITHUB + type: string + GitSource: example: - app: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - id: id - terminated_at: 2000-01-23T04:56:07.000+00:00 - status: null + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + properties: + repository: + description: "A url to a git repository (contains the provider as well)\ + \ .e.g: github.com/koyeb/test." + type: string + branch: + title: A git branch that will be tracked for new commits and deployments + will be created + type: string + tag: + title: A git tag that should be built + type: string + sha: + title: "A git commit that should be built (useful for pinning to a commit,\ + \ this will always be set when a deployment is created by a code push)" + type: string + build_command: + title: "A command used to override the build command, run after all build\ + \ steps —\_deprecated, use buildpack.build_command instead" + type: string + run_command: + title: "A command used to override the default run command - deprecated,\ + \ use buildpack.run_command instead" + type: string + no_deploy_on_push: + title: A flag to disable a new deployment when a push event is detected + type: boolean + workdir: + title: A subdirectory to use as the build directory + type: string + buildpack: + $ref: '#/components/schemas/BuildpackBuilder' + docker: + $ref: '#/components/schemas/DockerBuilder' + type: object + HTTPHeader: + example: + value: value + key: key + properties: + key: + type: string + value: + type: string + type: object + HTTPHealthCheck: + example: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 properties: - app: - $ref: '#/components/schemas/App' + port: + format: int64 + title: "The port to use to perform the health check, must be declared in\ + \ the ports section" + type: integer + path: + title: The path to use to perform the HTTP health check + type: string + method: + title: "An optional HTTP method to use to perform the health check, default\ + \ is GET" + type: string + headers: + items: + $ref: '#/components/schemas/HTTPHeader' + title: "An optional list of HTTP headers to provide when performing the\ + \ request, default is empty" + type: array type: object - ListAppEventsReply: + ListServiceEventsReply: example: offset: 6 limit: 0 @@ -11688,23 +11821,23 @@ components: events: - metadata: "{}" organization_id: organization_id + service_id: service_id id: id type: type message: message when: 2000-01-23T04:56:07.000+00:00 - app_id: app_id - metadata: "{}" organization_id: organization_id + service_id: service_id id: id type: type message: message when: 2000-01-23T04:56:07.000+00:00 - app_id: app_id order: order properties: events: items: - $ref: '#/components/schemas/AppEvent' + $ref: '#/components/schemas/ServiceEvent' title: The collection of events type: array limit: @@ -11723,241 +11856,86 @@ components: title: The order in the request type: string type: object - ListAppsReply: + ListServicesReply: example: offset: 6 limit: 0 count: 1 - apps: - - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - created_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - messages: - - messages - - messages - id: id - status: null - - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - created_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - messages: - - messages - - messages - id: id - status: null - properties: - apps: - items: - $ref: '#/components/schemas/AppListItem' - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - type: object - PauseAppReply: - type: object - ResumeAppReply: - type: object - UpdateApp: - example: - name: name - properties: - name: - type: string - type: object - UpdateAppReply: - example: - app: - created_at: 2000-01-23T04:56:07.000+00:00 - resumed_at: 2000-01-23T04:56:07.000+00:00 - domains: - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null - - created_at: 2000-01-23T04:56:07.000+00:00 - intended_cname: intended_cname - type: null - version: version - updated_at: 2000-01-23T04:56:07.000+00:00 - deployment_group: deployment_group - verified_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - name: name - messages: - - messages - - messages - id: id - app_id: app_id - status: null + services: + - created_at: 2000-01-23T04:56:07.000+00:00 + type: null version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - paused_at: 2000-01-23T04:56:07.000+00:00 updated_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id name: name - started_at: 2000-01-23T04:56:07.000+00:00 messages: - messages - messages + active_deployment_id: active_deployment_id id: id - terminated_at: 2000-01-23T04:56:07.000+00:00 - status: null - properties: - app: - $ref: '#/components/schemas/App' - type: object - AppUsage: - example: - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - properties: - app_id: - type: string - app_name: - type: string - services: - items: - $ref: '#/components/schemas/ServiceUsage' - type: array - type: object - GetOrganizationUsageDetailsReply: - example: - offset: 1 - limit: 6 - count: 5 - usage_details: - - regional_deployment_id: regional_deployment_id - duration_seconds: 0 - service_name: service_name - app_name: app_name - instance_id: instance_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - deployment_id: deployment_id - region: region + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository app_id: app_id - instance_type: instance_type - terminated_at: 2000-01-23T04:56:07.000+00:00 - - regional_deployment_id: regional_deployment_id - duration_seconds: 0 - service_name: service_name - app_name: app_name - instance_id: instance_id + latest_deployment_id: latest_deployment_id + status: null + - created_at: 2000-01-23T04:56:07.000+00:00 + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - deployment_id: deployment_id - region: region + name: name + messages: + - messages + - messages + active_deployment_id: active_deployment_id + id: id + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository app_id: app_id - instance_type: instance_type - terminated_at: 2000-01-23T04:56:07.000+00:00 - order: order + latest_deployment_id: latest_deployment_id + status: null properties: - usage_details: + services: items: - $ref: '#/components/schemas/UsageDetails' - title: The collection of usage instances + $ref: '#/components/schemas/ServiceListItem' type: array limit: format: int64 @@ -11968,269 +11946,96 @@ components: title: The offset in the request type: integer count: - format: int64 - title: The total number of items - type: integer - order: - title: The order in the request - type: string - type: object - GetOrganizationUsageReply: - example: - usage: - organization_id: organization_id - periods: - key: - ending_time: 2000-01-23T04:56:07.000+00:00 - starting_time: 2000-01-23T04:56:07.000+00:00 - apps: - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - properties: - usage: - $ref: '#/components/schemas/Usage' - type: object - InstanceUsage: - example: - duration_seconds: 0 - properties: - duration_seconds: - format: int64 - type: integer - type: object - PeriodUsage: - example: - ending_time: 2000-01-23T04:56:07.000+00:00 - starting_time: 2000-01-23T04:56:07.000+00:00 - apps: - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - properties: - starting_time: - format: date-time - type: string - ending_time: - format: date-time - type: string - apps: - items: - $ref: '#/components/schemas/AppUsage' - type: array - type: object - RegionUsage: - example: - instances: - key: - duration_seconds: 0 - properties: - instances: - additionalProperties: - $ref: '#/components/schemas/InstanceUsage' - type: object - type: object - ServiceUsage: - example: - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - properties: - service_id: - type: string - service_name: - type: string - regions: - additionalProperties: - $ref: '#/components/schemas/RegionUsage' - type: object - type: object - Usage: - example: - organization_id: organization_id - periods: - key: - ending_time: 2000-01-23T04:56:07.000+00:00 - starting_time: 2000-01-23T04:56:07.000+00:00 - apps: - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - - app_name: app_name - services: - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - - regions: - key: - instances: - key: - duration_seconds: 0 - service_name: service_name - service_id: service_id - app_id: app_id - properties: - organization_id: - type: string - periods: - additionalProperties: - $ref: '#/components/schemas/PeriodUsage' - type: object + format: int64 + title: The total number of items + type: integer type: object - UsageDetails: + NeonPostgresDatabase: example: - regional_deployment_id: regional_deployment_id - duration_seconds: 0 - service_name: service_name - app_name: app_name - instance_id: instance_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - deployment_id: deployment_id + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret region: region - app_id: app_id - instance_type: instance_type - terminated_at: 2000-01-23T04:56:07.000+00:00 + pg_version: 4 properties: - organization_id: - type: string - instance_id: - type: string - app_id: - type: string - app_name: - type: string - service_id: - type: string - service_name: - type: string - regional_deployment_id: - type: string - region: - type: string - deployment_id: - type: string - instance_type: - type: string - duration_seconds: + pg_version: format: int64 type: integer - started_at: - format: date-time + region: type: string - terminated_at: - format: date-time + roles: + items: + $ref: '#/components/schemas/NeonPostgresDatabase.NeonRole' + type: array + databases: + items: + $ref: '#/components/schemas/NeonPostgresDatabase.NeonDatabase' + type: array + type: object + NeonPostgresDatabase.NeonDatabase: + example: + owner: owner + name: name + properties: + name: + type: string + owner: type: string type: object - Env: + NeonPostgresDatabase.NeonRole: example: + name: name secret: secret - value: value - key: key properties: - key: - type: string - value: + name: type: string secret: type: string type: object - GetRegionalDeploymentReply: + NeonPostgresDatabaseDeploymentMetadata: example: - regional_deployment: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + properties: + reset_role_passwords: + items: + type: string + type: array + type: object + PauseServiceReply: + type: object + RedeployReply: + example: + deployment: metadata: - runtime_job_id: runtime_job_id + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null created_at: 2000-01-23T04:56:07.000+00:00 version: version succeeded_at: 2000-01-23T04:56:07.000+00:00 - datacenters: - - datacenters - - datacenters updated_at: 2000-01-23T04:56:07.000+00:00 child_id: child_id provisioning_info: @@ -12271,184 +12076,37 @@ components: messages: - messages - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - scaling: - min: 1 - max: 5 - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - secret: secret - value: value - key: key - - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - deployment_group: deployment_group - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - region: region - instance_type: instance_type - id: id - deployment_id: deployment_id - region: region - app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 - status: null - properties: - regional_deployment: - $ref: '#/components/schemas/RegionalDeployment' - type: object - ListRegionalDeploymentEventsReply: - example: - offset: 6 - limit: 0 - count: 1 - events: - - regional_deployment_id: regional_deployment_id - metadata: "{}" - organization_id: organization_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - - regional_deployment_id: regional_deployment_id - metadata: "{}" + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id organization_id: organization_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 - order: order - properties: - events: - items: - $ref: '#/components/schemas/RegionalDeploymentEvent' - title: The collection of events - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer - order: - title: The order in the request - type: string - type: object - ListRegionalDeploymentsReply: - example: - offset: 2 - regional_deployments: - - updated_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 messages: - messages - messages definition: - scaling: - min: 1 - max: 5 + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions skip_cache: true type: null ports: @@ -12457,10 +12115,16 @@ components: - protocol: protocol port: 6 env: - - secret: secret + - scopes: + - scopes + - scopes + secret: secret value: value key: key - - secret: secret + - scopes: + - scopes + - scopes + secret: secret value: value key: key docker: @@ -12479,6 +12143,20 @@ components: port: 0 - path: path port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 git: run_command: run_command workdir: workdir @@ -12503,7 +12181,17 @@ components: dockerfile: dockerfile command: command target: target - deployment_group: deployment_group + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes health_checks: - tcp: port: 3 @@ -12536,216 +12224,361 @@ components: grace_period: 5 timeout: 9 name: name - region: region - instance_type: instance_type id: id - region: region + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null - - updated_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - scaling: - min: 1 - max: 5 - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - secret: secret - value: value - key: key - - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag + properties: + deployment: + $ref: '#/components/schemas/Deployment' + type: object + RedeployRequest.Info: + properties: + deployment_group: + type: string + sha: + type: string + use_cache: + type: boolean + type: object + ResumeServiceReply: + type: object + Service: + example: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + type: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + active_deployment_id: active_deployment_id + id: id + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + latest_deployment_id: latest_deployment_id + status: null + properties: + id: + type: string + created_at: + format: date-time + type: string + updated_at: + format: date-time + type: string + started_at: + format: date-time + type: string + succeeded_at: + format: date-time + type: string + paused_at: + format: date-time + type: string + resumed_at: + format: date-time + type: string + terminated_at: + format: date-time + type: string + name: + type: string + type: + $ref: '#/components/schemas/Service.Type' + organization_id: + type: string + app_id: + type: string + status: + $ref: '#/components/schemas/Service.Status' + messages: + items: + type: string + type: array + version: + format: uint64 + type: string + active_deployment_id: + type: string + latest_deployment_id: + type: string + state: + $ref: '#/components/schemas/ServiceState' + type: object + Service.Status: + default: STARTING + enum: + - STARTING + - HEALTHY + - DEGRADED + - UNHEALTHY + - DELETING + - DELETED + - PAUSING + - PAUSED + - RESUMING + type: string + Service.Type: + default: INVALID_TYPE + enum: + - INVALID_TYPE + - WEB + - WORKER + - DATABASE + type: string + ServiceEvent: + example: + metadata: "{}" + organization_id: organization_id + service_id: service_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + properties: + id: + type: string + when: + format: date-time + type: string + organization_id: + type: string + service_id: + type: string + type: + type: string + message: + type: string + metadata: + properties: {} + type: object + type: object + ServiceListItem: + example: + created_at: 2000-01-23T04:56:07.000+00:00 + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + active_deployment_id: active_deployment_id + id: id + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - deployment_group: deployment_group - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - region: region - instance_type: instance_type - id: id - region: region - status: null - limit: 5 - count: 7 + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + app_id: app_id + latest_deployment_id: latest_deployment_id + status: null properties: - regional_deployments: + id: + type: string + name: + type: string + type: + $ref: '#/components/schemas/Service.Type' + organization_id: + type: string + app_id: + type: string + updated_at: + format: date-time + type: string + created_at: + format: date-time + type: string + status: + $ref: '#/components/schemas/Service.Status' + messages: items: - $ref: '#/components/schemas/RegionalDeploymentListItem' - title: The collection of regional deployments + type: string type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer + version: + format: uint64 + title: A version updated whenever this state changes (useful for caching) + type: string + state: + $ref: '#/components/schemas/ServiceState' + active_deployment_id: + type: string + latest_deployment_id: + type: string type: object - Port: + ServiceState: example: - protocol: protocol - port: 6 + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + properties: + desired_deployment: + $ref: '#/components/schemas/DesiredDeployment' + auto_release: + $ref: '#/components/schemas/AutoRelease' + type: object + TCPHealthCheck: + example: + port: 3 properties: port: format: int64 + title: "The port to use to perform the health check, must be declared in\ + \ the ports section" type: integer - protocol: - type: string type: object - RegionalDeployment: + TriggerDeploymentMetadata: + example: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + properties: + type: + $ref: '#/components/schemas/TriggerDeploymentMetadata.TriggerType' + actor: + $ref: '#/components/schemas/TriggerDeploymentMetadata.ActorType' + git: + $ref: '#/components/schemas/GitDeploymentMetadata' + type: object + TriggerDeploymentMetadata.ActorType: + default: UNKNOWN_ACTOR + enum: + - UNKNOWN_ACTOR + - USER + - SYSTEM + type: string + TriggerDeploymentMetadata.TriggerType: + default: UNKNOWN_TYPE + enum: + - UNKNOWN_TYPE + - GIT + - RESUME + type: string + UpdateService: example: metadata: - runtime_job_id: runtime_job_id - created_at: 2000-01-23T04:56:07.000+00:00 - version: version - succeeded_at: 2000-01-23T04:56:07.000+00:00 - datacenters: - - datacenters - - datacenters - updated_at: 2000-01-23T04:56:07.000+00:00 - child_id: child_id - provisioning_info: - image: image - stages: - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - build_attempts: - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - - finished_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - id: 0 - status: null - name: name - messages: - - messages - - messages - started_at: 2000-01-23T04:56:07.000+00:00 - status: null - sha: sha - deployment_group: deployment_group - parent_id: parent_id - organization_id: organization_id - service_id: service_id - started_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null definition: - scaling: - min: 1 - max: 5 + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions skip_cache: true type: null ports: @@ -12754,10 +12587,16 @@ components: - protocol: protocol port: 6 env: - - secret: secret + - scopes: + - scopes + - scopes + secret: secret value: value key: key - - secret: secret + - scopes: + - scopes + - scopes + secret: secret value: value key: key docker: @@ -12776,6 +12615,20 @@ components: port: 0 - path: path port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 git: run_command: run_command workdir: workdir @@ -12800,7 +12653,17 @@ components: dockerfile: dockerfile command: command target: target - deployment_group: deployment_group + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes health_checks: - tcp: port: 3 @@ -12833,709 +12696,542 @@ components: grace_period: 5 timeout: 9 name: name - region: region - instance_type: instance_type - id: id - deployment_id: deployment_id - region: region + properties: + definition: + $ref: '#/components/schemas/DeploymentDefinition' + metadata: + $ref: '#/components/schemas/DeploymentMetadata' + type: object + UpdateServiceReply: + example: + service: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + type: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + active_deployment_id: active_deployment_id + id: id + state: + desired_deployment: + groups: + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + - name: name + deployment_ids: + - deployment_ids + - deployment_ids + auto_release: + groups: + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + - latest_sha: latest_sha + name: name + git_ref: git_ref + repository: repository + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + latest_deployment_id: latest_deployment_id + status: null + properties: + service: + $ref: '#/components/schemas/Service' + type: object + AppUsage: + example: + app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id app_id: app_id - terminated_at: 2000-01-23T04:56:07.000+00:00 - allocated_at: 2000-01-23T04:56:07.000+00:00 - status: null properties: - id: - type: string - created_at: - format: date-time - type: string - updated_at: - format: date-time - type: string - allocated_at: - format: date-time - type: string - started_at: - format: date-time - type: string - succeeded_at: - format: date-time - type: string - terminated_at: - format: date-time - type: string - organization_id: - type: string app_id: type: string - service_id: - type: string - region: - type: string - parent_id: - type: string - child_id: + app_name: type: string - status: - $ref: '#/components/schemas/RegionalDeployment.Status' - messages: + services: items: - type: string + $ref: '#/components/schemas/ServiceUsage' type: array - definition: - $ref: '#/components/schemas/RegionalDeploymentDefinition' - datacenters: + type: object + GetOrganizationUsageDetailsReply: + example: + offset: 1 + limit: 6 + count: 5 + usage_details: + - regional_deployment_id: regional_deployment_id + duration_seconds: 0 + service_name: service_name + app_name: app_name + instance_id: instance_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + deployment_id: deployment_id + region: region + app_id: app_id + instance_type: instance_type + terminated_at: 2000-01-23T04:56:07.000+00:00 + - regional_deployment_id: regional_deployment_id + duration_seconds: 0 + service_name: service_name + app_name: app_name + instance_id: instance_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + deployment_id: deployment_id + region: region + app_id: app_id + instance_type: instance_type + terminated_at: 2000-01-23T04:56:07.000+00:00 + order: order + properties: + usage_details: items: - type: string + $ref: '#/components/schemas/UsageDetails' + title: The collection of usage instances type: array - metadata: - $ref: '#/components/schemas/RegionalDeploymentMetadata' - provisioning_info: - $ref: '#/components/schemas/DeploymentProvisioningInfo' - version: - format: uint64 - type: string - deployment_group: - title: Legacy stuff - type: string - deployment_id: + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer + order: + title: The order in the request type: string type: object - RegionalDeployment.Status: - default: PENDING - enum: - - PENDING - - PROVISIONING - - SCHEDULED - - CANCELING - - CANCELED - - ALLOCATING - - STARTING - - HEALTHY - - DEGRADED - - UNHEALTHY - - STOPPING - - STOPPED - - ERRORING - - ERROR - type: string - RegionalDeploymentDefinition: + GetOrganizationUsageReply: example: - scaling: - min: 1 - max: 5 - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - secret: secret - value: value - key: key - - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - deployment_group: deployment_group - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - region: region - instance_type: instance_type + usage: + organization_id: organization_id + periods: + key: + ending_time: 2000-01-23T04:56:07.000+00:00 + starting_time: 2000-01-23T04:56:07.000+00:00 + apps: + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id + properties: + usage: + $ref: '#/components/schemas/Usage' + type: object + InstanceUsage: + example: + duration_seconds: 0 + properties: + duration_seconds: + format: int64 + type: integer + type: object + PeriodUsage: + example: + ending_time: 2000-01-23T04:56:07.000+00:00 + starting_time: 2000-01-23T04:56:07.000+00:00 + apps: + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id properties: - name: - type: string - type: - $ref: '#/components/schemas/RegionalDeploymentDefinition.Type' - routes: - items: - $ref: '#/components/schemas/Route' - type: array - ports: - items: - $ref: '#/components/schemas/Port' - type: array - env: - items: - $ref: '#/components/schemas/Env' - type: array - region: - type: string - scaling: - $ref: '#/components/schemas/Scaling' - instance_type: + starting_time: + format: date-time type: string - deployment_group: + ending_time: + format: date-time type: string - health_checks: + apps: items: - $ref: '#/components/schemas/DeploymentHealthCheck' + $ref: '#/components/schemas/AppUsage' type: array - skip_cache: - type: boolean - docker: - $ref: '#/components/schemas/DockerSource' - git: - $ref: '#/components/schemas/GitSource' type: object - RegionalDeploymentDefinition.Type: - default: INVALID - enum: - - INVALID - - WEB - - WORKER - type: string - RegionalDeploymentEvent: + RegionUsage: example: - regional_deployment_id: regional_deployment_id - metadata: "{}" - organization_id: organization_id - id: id - type: type - message: message - when: 2000-01-23T04:56:07.000+00:00 + instances: + key: + duration_seconds: 0 properties: - id: - type: string - when: - format: date-time - type: string - organization_id: - type: string - regional_deployment_id: - type: string - type: + instances: + additionalProperties: + $ref: '#/components/schemas/InstanceUsage' + type: object + type: object + ServiceUsage: + example: + regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + properties: + service_id: type: string - message: + service_name: type: string - metadata: - properties: {} + regions: + additionalProperties: + $ref: '#/components/schemas/RegionUsage' type: object type: object - RegionalDeploymentListItem: + Usage: example: - updated_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - messages: - - messages - - messages - definition: - scaling: - min: 1 - max: 5 - skip_cache: true - type: null - ports: - - protocol: protocol - port: 6 - - protocol: protocol - port: 6 - env: - - secret: secret - value: value - key: key - - secret: secret - value: value - key: key - docker: - args: - - args - - args - privileged: true - image: image - image_registry_secret: image_registry_secret - entrypoint: - - entrypoint - - entrypoint - command: command - routes: - - path: path - port: 0 - - path: path - port: 0 - git: - run_command: run_command - workdir: workdir - build_command: build_command - no_deploy_on_push: true - tag: tag - repository: repository - buildpack: - privileged: true - run_command: run_command - build_command: build_command - branch: branch - sha: sha - docker: - args: - - args - - args - privileged: true - entrypoint: - - entrypoint - - entrypoint - dockerfile: dockerfile - command: command - target: target - deployment_group: deployment_group - health_checks: - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - - tcp: - port: 3 - restart_limit: 7 - http: - path: path - headers: - - value: value - key: key - - value: value - key: key - method: method - port: 2 - interval: 2 - grace_period: 5 - timeout: 9 - name: name - region: region - instance_type: instance_type - id: id + organization_id: organization_id + periods: + key: + ending_time: 2000-01-23T04:56:07.000+00:00 + starting_time: 2000-01-23T04:56:07.000+00:00 + apps: + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id + - app_name: app_name + services: + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + - regions: + key: + instances: + key: + duration_seconds: 0 + service_name: service_name + service_id: service_id + app_id: app_id + properties: + organization_id: + type: string + periods: + additionalProperties: + $ref: '#/components/schemas/PeriodUsage' + type: object + type: object + UsageDetails: + example: + regional_deployment_id: regional_deployment_id + duration_seconds: 0 + service_name: service_name + app_name: app_name + instance_id: instance_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + deployment_id: deployment_id region: region - status: null + app_id: app_id + instance_type: instance_type + terminated_at: 2000-01-23T04:56:07.000+00:00 properties: - id: + organization_id: type: string - created_at: - format: date-time + instance_id: type: string - updated_at: - format: date-time + app_id: + type: string + app_name: + type: string + service_id: + type: string + service_name: + type: string + regional_deployment_id: type: string region: type: string - status: - $ref: '#/components/schemas/RegionalDeployment.Status' - messages: - items: - type: string - type: array - definition: - $ref: '#/components/schemas/RegionalDeploymentDefinition' - type: object - RegionalDeploymentMetadata: - example: - runtime_job_id: runtime_job_id - properties: - runtime_job_id: + deployment_id: type: string - type: object - Route: - example: - path: path - port: 0 - properties: - port: - format: int64 - type: integer - path: + instance_type: type: string - type: object - Scaling: - example: - min: 1 - max: 5 - properties: - min: - format: int64 - type: integer - max: + duration_seconds: format: int64 type: integer + started_at: + format: date-time + type: string + terminated_at: + format: date-time + type: string type: object - ConfirmPaymentAuthorizationReply: - example: - payment_method: - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits - version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint - updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country - organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 - messages: - - messages - - messages - id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret - status: null - properties: - payment_method: - $ref: '#/components/schemas/PaymentMethod' - type: object - CreatePaymentAuthorizationReply: + CreateDomain: example: - payment_method: - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits - version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint - updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country - organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 - messages: - - messages - - messages - id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret - status: null + name: name + type: null + app_id: app_id properties: - payment_method: - $ref: '#/components/schemas/PaymentMethod' - type: object - CreatePaymentAuthorizationRequest: - type: object - DeletePaymentMethodReply: + name: + type: string + type: + $ref: '#/components/schemas/Domain.Type' + app_id: + title: to auto-attach to an app. Optional + type: string type: object - GetPaymentMethodReply: + CreateDomainReply: example: - payment_method: - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 + domain: created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits + intended_cname: intended_cname + type: null version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 + name: name messages: - messages - messages id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + app_id: app_id status: null properties: - payment_method: - $ref: '#/components/schemas/PaymentMethod' + domain: + $ref: '#/components/schemas/Domain' type: object - ListPaymentMethodsReply: - example: - payment_methods: - - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits - version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint - updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country - organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 - messages: - - messages - - messages - id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret - status: null - - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits - version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint - updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country - organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 - messages: - - messages - - messages - id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret - status: null - offset: 5 - limit: 1 - count: 5 - properties: - payment_methods: - items: - $ref: '#/components/schemas/PaymentMethod' - title: The collection of payment methods - type: array - limit: - format: int64 - title: The limit in the request - type: integer - offset: - format: int64 - title: The offset in the request - type: integer - count: - format: int64 - title: The total number of items - type: integer + DeleteDomainReply: type: object - PaymentMethod: + Domain: example: - authorization_stripe_payment_intent_id: authorization_stripe_payment_intent_id - authorization_canceled_at: 2000-01-23T04:56:07.000+00:00 created_at: 2000-01-23T04:56:07.000+00:00 - type: type - card_last_digits: card_last_digits + intended_cname: intended_cname + type: null version: version - card_expiration_year: 6 - card_fingerprint: card_fingerprint updated_at: 2000-01-23T04:56:07.000+00:00 - provider: provider - card_country: card_country + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - authorization_verified_at: 2000-01-23T04:56:07.000+00:00 - card_funding: card_funding - card_brand: card_brand - card_expiration_month: 0 + name: name messages: - messages - messages id: id - stripe_payment_method_id: stripe_payment_method_id - authorization_stripe_payment_intent_client_secret: authorization_stripe_payment_intent_client_secret + app_id: app_id status: null properties: id: type: string + organization_id: + type: string + name: + type: string created_at: format: date-time type: string updated_at: format: date-time type: string - version: - format: uint64 + status: + $ref: '#/components/schemas/Domain.Status' + type: + $ref: '#/components/schemas/Domain.Type' + app_id: type: string - organization_id: + deployment_group: type: string - type: + verified_at: + format: date-time type: string - provider: + intended_cname: type: string - status: - $ref: '#/components/schemas/PaymentMethod.Status' messages: items: type: string type: array - stripe_payment_method_id: - type: string - authorization_verified_at: - format: date-time - type: string - authorization_canceled_at: - format: date-time - type: string - authorization_stripe_payment_intent_id: - type: string - authorization_stripe_payment_intent_client_secret: - type: string - card_brand: - type: string - card_country: - type: string - card_funding: - type: string - card_fingerprint: - type: string - card_last_digits: + version: + format: uint64 type: string - card_expiration_month: - format: int64 - type: integer - card_expiration_year: - format: int64 - type: integer type: object - PaymentMethod.Status: - default: INVALID + Domain.Status: + default: PENDING enum: - - INVALID - - CREATED - - AUTHORIZED - - DECLINED - - CANCELED - - EXPIRED - - UNCHECKED + - PENDING + - ACTIVE + - ERROR + - DELETING + - DELETED type: string - ListOrganizationMembersReply: + Domain.Type: + default: AUTOASSIGNED + enum: + - AUTOASSIGNED + - CUSTOM + title: "- AUTOASSIGNED: Domain like -.koyeb.app" + type: string + GetDomainReply: + example: + domain: + created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + id: id + app_id: app_id + status: null + properties: + domain: + $ref: '#/components/schemas/Domain' + type: object + ListDomainsReply: example: offset: 6 - members: - - joined_at: 2000-01-23T04:56:07.000+00:00 - role: null - user_id: user_id + limit: 0 + count: 1 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null + name: name + messages: + - messages + - messages id: id - user: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email + app_id: app_id status: null - - joined_at: 2000-01-23T04:56:07.000+00:00 - role: null - user_id: user_id + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null + name: name + messages: + - messages + - messages id: id - user: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email + app_id: app_id status: null - limit: 0 - count: 1 properties: - members: + domains: items: - $ref: '#/components/schemas/OrganizationMember' - title: The collection of organization members + $ref: '#/components/schemas/Domain' type: array limit: format: int64 @@ -13550,287 +13246,482 @@ components: title: The total number of items type: integer type: object - Organization.Status: - default: WARNING - enum: - - WARNING - - LOCKED - - ACTIVE - - DEACTIVATING - - DEACTIVATED - - DELETING - - DELETED - type: string - OrganizationMember: + RefreshDomainStatusReply: + type: object + UpdateDomain: example: - joined_at: 2000-01-23T04:56:07.000+00:00 - role: null - user_id: user_id - organization_id: organization_id - organization: + app_id: app_id + properties: + app_id: + title: To attach or detach from an app + type: string + type: object + UpdateDomainReply: + example: + domain: + created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + id: id + app_id: app_id + status: null + properties: + domain: + $ref: '#/components/schemas/Domain' + type: object + App: + example: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + id: id + app_id: app_id + status: null + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages id: id - user: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email + terminated_at: 2000-01-23T04:56:07.000+00:00 status: null properties: id: type: string + name: + type: string organization_id: type: string - user_id: + created_at: + format: date-time type: string - joined_at: + updated_at: + format: date-time + type: string + started_at: + format: date-time + type: string + succeeded_at: + format: date-time + type: string + paused_at: + format: date-time + type: string + resumed_at: + format: date-time + type: string + terminated_at: format: date-time type: string - role: - $ref: '#/components/schemas/UserRole.Role' status: - $ref: '#/components/schemas/OrganizationMember.Status' - user: - $ref: '#/components/schemas/PublicUser' - organization: - $ref: '#/components/schemas/PublicOrganization' + $ref: '#/components/schemas/App.Status' + messages: + items: + type: string + type: array + version: + format: uint64 + type: string + domains: + items: + $ref: '#/components/schemas/Domain' + type: array type: object - OrganizationMember.Status: - default: INVALID + App.Status: + default: STARTING enum: - - INVALID - - ACTIVE + - STARTING + - HEALTHY + - DEGRADED + - UNHEALTHY + - DELETING - DELETED + - PAUSING + - PAUSED + - RESUMING type: string - Plan: - default: hobby - enum: - - hobby - - starter - - startup - - business - - enterprise - - internal - - hobby23 - - no_plan - type: string - PublicOrganization: + AppEvent: example: - name: name + metadata: "{}" + organization_id: organization_id id: id - plan: null - status: null + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + app_id: app_id properties: id: type: string - name: + when: + format: date-time type: string - plan: - $ref: '#/components/schemas/Plan' - status: - $ref: '#/components/schemas/Organization.Status' + organization_id: + type: string + app_id: + type: string + type: + type: string + message: + type: string + metadata: + properties: {} + type: object type: object - PublicUser: + AppListItem: example: - github_user: github_user - avatar_url: avatar_url + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id + created_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + id: id + app_id: app_id + status: null + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + messages: + - messages + - messages + id: id + app_id: app_id + status: null + messages: + - messages + - messages id: id - email: email + status: null properties: id: type: string - email: - type: string name: type: string - avatar_url: + organization_id: type: string - github_id: + updated_at: + format: date-time type: string - github_user: + created_at: + format: date-time type: string + domains: + items: + $ref: '#/components/schemas/Domain' + type: array + status: + $ref: '#/components/schemas/App.Status' + messages: + items: + type: string + type: array type: object - RemoveOrganizationMemberReply: + CreateApp: example: - member: - joined_at: 2000-01-23T04:56:07.000+00:00 - role: null - user_id: user_id - organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - id: id - user: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - status: null + name: name properties: - member: - $ref: '#/components/schemas/OrganizationMember' + name: + type: string type: object - UserRole.Role: - default: INVALID - enum: - - INVALID - - OWNER - type: string - CreateOrganizationInvitationReply: + CreateAppReply: example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: + app: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id + messages: + - messages + - messages id: id - email: email + app_id: app_id + status: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages id: id - email: email - invitee_id: invitee_id + terminated_at: 2000-01-23T04:56:07.000+00:00 status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' - type: object - CreateOrganizationInvitationRequest: - example: - email: email - properties: - email: - title: The email of the person to invite - type: string + app: + $ref: '#/components/schemas/App' type: object - DeleteOrganizationInvitationReply: + DeleteAppReply: type: object - GetOrganizationInvitationReply: + GetAppReply: example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: + app: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id + messages: + - messages + - messages id: id - email: email + app_id: app_id + status: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages id: id - email: email - invitee_id: invitee_id + terminated_at: 2000-01-23T04:56:07.000+00:00 status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' + app: + $ref: '#/components/schemas/App' type: object - ListOrganizationInvitationsReply: + ListAppEventsReply: example: offset: 6 - invitations: - - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 + limit: 0 + count: 1 + events: + - metadata: "{}" organization_id: organization_id - organization: + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + app_id: app_id + - metadata: "{}" + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + app_id: app_id + order: order + properties: + events: + items: + $ref: '#/components/schemas/AppEvent' + title: The collection of events + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer + order: + title: The order in the request + type: string + type: object + ListAppsReply: + example: + offset: 6 + limit: 0 + count: 1 + apps: + - updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + created_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id + messages: + - messages + - messages id: id - email: email + app_id: app_id + status: null + messages: + - messages + - messages id: id - email: email - invitee_id: invitee_id status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 + - updated_at: 2000-01-23T04:56:07.000+00:00 organization_id: organization_id - organization: + name: name + created_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - id: id - email: email - invitee_id: invitee_id - status: null - invitee: - github_user: github_user - avatar_url: avatar_url + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id - id: id - email: email - limit: 0 - count: 1 + messages: + - messages + - messages + id: id + app_id: app_id + status: null + messages: + - messages + - messages + id: id + status: null properties: - invitations: + apps: items: - $ref: '#/components/schemas/OrganizationInvitation' - title: The collection of organization invitations + $ref: '#/components/schemas/AppListItem' type: array limit: format: int64 @@ -13845,1041 +13736,1803 @@ components: title: The total number of items type: integer type: object - OrganizationInvitation: + PauseAppReply: + type: object + ResumeAppReply: + type: object + UpdateApp: example: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - id: id - email: email - invitee_id: invitee_id - status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email + name: name properties: - id: - type: string - email: - type: string - role: - $ref: '#/components/schemas/UserRole.Role' - status: - $ref: '#/components/schemas/OrganizationInvitation.Status' - expires_at: - format: date-time - type: string - organization_id: - type: string - organization: - $ref: '#/components/schemas/PublicOrganization' - invitee_id: - type: string - invitee: - $ref: '#/components/schemas/PublicUser' - inviter_id: + name: type: string - inviter: - $ref: '#/components/schemas/PublicUser' type: object - OrganizationInvitation.Status: - default: INVALID - enum: - - INVALID - - PENDING - - ACCEPTED - - REFUSED - - EXPIRED - type: string - ResendOrganizationInvitationReply: + UpdateAppReply: example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: + app: + created_at: 2000-01-23T04:56:07.000+00:00 + resumed_at: 2000-01-23T04:56:07.000+00:00 + domains: + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name + messages: + - messages + - messages id: id - plan: null + app_id: app_id status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + - created_at: 2000-01-23T04:56:07.000+00:00 + intended_cname: intended_cname + type: null + version: version + updated_at: 2000-01-23T04:56:07.000+00:00 + deployment_group: deployment_group + verified_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id name: name - github_id: github_id + messages: + - messages + - messages id: id - email: email + app_id: app_id + status: null + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + paused_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + organization_id: organization_id + name: name + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages id: id - email: email - invitee_id: invitee_id + terminated_at: 2000-01-23T04:56:07.000+00:00 status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' + app: + $ref: '#/components/schemas/App' type: object - GetSubscriptionReply: + AzureContainerRegistryConfiguration: example: - subscription: - payment_failure: - error_message: error_message - attempt_count: attempt_count - error_reason: error_reason - error_type: error_type - stripe_sdk: - client_secret_key: client_secret_key - raw_json: raw_json - error_code: error_code - failed_at: 2000-01-23T04:56:07.000+00:00 - next_attempt: 2000-01-23T04:56:07.000+00:00 - redirect_url: redirect_url - payment_method_required: true - amount_paid: amount_paid - amount_remaining: amount_remaining - terminate_at: 2000-01-23T04:56:07.000+00:00 - stripe_pending_invoice_id: stripe_pending_invoice_id - canceled_at: 2000-01-23T04:56:07.000+00:00 + password: password + registry_name: registry_name + username: username + properties: + registry_name: + type: string + username: + type: string + password: + type: string + type: object + CreateSecret: + example: + gcp_container_registry: + keyfile_content: keyfile_content + url: url + github_registry: + password: password + username: username + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username + name: name + azure_container_registry: + password: password + registry_name: registry_name + username: username + type: null + value: value + docker_hub_registry: + password: password + username: username + digital_ocean_registry: + password: password + username: username + properties: + name: + type: string + type: + $ref: '#/components/schemas/SecretType' + value: + type: string + docker_hub_registry: + $ref: '#/components/schemas/DockerHubRegistryConfiguration' + private_registry: + $ref: '#/components/schemas/PrivateRegistryConfiguration' + digital_ocean_registry: + $ref: '#/components/schemas/DigitalOceanRegistryConfiguration' + github_registry: + $ref: '#/components/schemas/GitHubRegistryConfiguration' + gitlab_registry: + $ref: '#/components/schemas/GitLabRegistryConfiguration' + gcp_container_registry: + $ref: '#/components/schemas/GCPContainerRegistryConfiguration' + azure_container_registry: + $ref: '#/components/schemas/AzureContainerRegistryConfiguration' + type: object + CreateSecretReply: + example: + secret: created_at: 2000-01-23T04:56:07.000+00:00 - current_period_end: 2000-01-23T04:56:07.000+00:00 - version: version - amount_payable: amount_payable + azure_container_registry: + password: password + registry_name: registry_name + username: username + type: null + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - stripe_subscription_id: stripe_subscription_id - messages: - - messages - - messages - currency: currency + github_registry: + password: password + username: username + database_role_password: + password: password + username: username + organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username + name: name id: id - terminated_at: 2000-01-23T04:56:07.000+00:00 - current_period_start: 2000-01-23T04:56:07.000+00:00 - status: null - has_pending_update: true + value: value + docker_hub_registry: + password: password + username: username properties: - subscription: - $ref: '#/components/schemas/Subscription' + secret: + $ref: '#/components/schemas/Secret' type: object - Subscription: + DatabaseRolePassword: example: - payment_failure: - error_message: error_message - attempt_count: attempt_count - error_reason: error_reason - error_type: error_type - stripe_sdk: - client_secret_key: client_secret_key - raw_json: raw_json - error_code: error_code - failed_at: 2000-01-23T04:56:07.000+00:00 - next_attempt: 2000-01-23T04:56:07.000+00:00 - redirect_url: redirect_url - payment_method_required: true - amount_paid: amount_paid - amount_remaining: amount_remaining - terminate_at: 2000-01-23T04:56:07.000+00:00 - stripe_pending_invoice_id: stripe_pending_invoice_id - canceled_at: 2000-01-23T04:56:07.000+00:00 - created_at: 2000-01-23T04:56:07.000+00:00 - current_period_end: 2000-01-23T04:56:07.000+00:00 - version: version - amount_payable: amount_payable - updated_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - stripe_subscription_id: stripe_subscription_id - messages: - - messages - - messages - currency: currency - id: id - terminated_at: 2000-01-23T04:56:07.000+00:00 - current_period_start: 2000-01-23T04:56:07.000+00:00 - status: null - has_pending_update: true + password: password + username: username properties: - id: - type: string - created_at: - format: date-time + username: type: string - updated_at: - format: date-time + password: type: string - version: - format: uint64 + type: object + DeleteSecretReply: + type: object + DigitalOceanRegistryConfiguration: + example: + password: password + username: username + properties: + username: type: string - organization_id: + password: type: string - stripe_subscription_id: + type: object + DockerHubRegistryConfiguration: + example: + password: password + username: username + properties: + username: type: string - status: - $ref: '#/components/schemas/Subscription.Status' - messages: - items: - type: string - type: array - has_pending_update: - type: boolean - stripe_pending_invoice_id: + password: type: string - terminate_at: - format: date-time + type: object + GCPContainerRegistryConfiguration: + example: + keyfile_content: keyfile_content + url: url + properties: + keyfile_content: type: string - canceled_at: - format: date-time + url: type: string - terminated_at: - format: date-time + type: object + GetSecretReply: + example: + secret: + created_at: 2000-01-23T04:56:07.000+00:00 + azure_container_registry: + password: password + registry_name: registry_name + username: username + type: null + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url + updated_at: 2000-01-23T04:56:07.000+00:00 + github_registry: + password: password + username: username + database_role_password: + password: password + username: username + organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username + name: name + id: id + value: value + docker_hub_registry: + password: password + username: username + properties: + secret: + $ref: '#/components/schemas/Secret' + type: object + GitHubRegistryConfiguration: + example: + password: password + username: username + properties: + username: type: string - current_period_start: - format: date-time + password: type: string - current_period_end: - format: date-time + type: object + GitLabRegistryConfiguration: + example: + password: password + username: username + properties: + username: type: string - currency: + password: type: string - amount_payable: + type: object + ListSecretsReply: + example: + offset: 6 + limit: 0 + count: 1 + secrets: + - created_at: 2000-01-23T04:56:07.000+00:00 + azure_container_registry: + password: password + registry_name: registry_name + username: username + type: null + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url + updated_at: 2000-01-23T04:56:07.000+00:00 + github_registry: + password: password + username: username + database_role_password: + password: password + username: username + organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username + name: name + id: id + value: value + docker_hub_registry: + password: password + username: username + - created_at: 2000-01-23T04:56:07.000+00:00 + azure_container_registry: + password: password + registry_name: registry_name + username: username + type: null + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url + updated_at: 2000-01-23T04:56:07.000+00:00 + github_registry: + password: password + username: username + database_role_password: + password: password + username: username + organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username + name: name + id: id + value: value + docker_hub_registry: + password: password + username: username + properties: + secrets: + items: + $ref: '#/components/schemas/Secret' + type: array + limit: format: int64 - type: string - amount_paid: + type: integer + offset: format: int64 - type: string - amount_remaining: + type: integer + count: format: int64 - type: string - payment_failure: - $ref: '#/components/schemas/Subscription.PaymentFailure' + type: integer type: object - Subscription.PaymentFailure: + PrivateRegistryConfiguration: example: - error_message: error_message - attempt_count: attempt_count - error_reason: error_reason - error_type: error_type - stripe_sdk: - client_secret_key: client_secret_key - raw_json: raw_json - error_code: error_code - failed_at: 2000-01-23T04:56:07.000+00:00 - next_attempt: 2000-01-23T04:56:07.000+00:00 - redirect_url: redirect_url - payment_method_required: true + password: password + url: url + username: username properties: - failed_at: - format: date-time - type: string - next_attempt: - format: date-time - type: string - attempt_count: - format: int64 - type: string - error_code: - type: string - error_reason: - type: string - error_type: + username: type: string - error_message: + password: type: string - payment_method_required: - type: boolean - redirect_url: + url: type: string - stripe_sdk: - $ref: '#/components/schemas/Subscription.PaymentFailure.StripeSDK' type: object - Subscription.PaymentFailure.StripeSDK: + RevealSecretReply: example: - client_secret_key: client_secret_key - raw_json: raw_json + value: "{}" properties: - client_secret_key: - type: string - raw_json: - type: string - type: object - Subscription.Status: - default: INVALID - enum: - - INVALID - - CREATED - - ACTIVE - - WARNING - - URGENT - - CANCELING - - CANCELED - - TERMINATING - - TERMINATED - type: string - ConfirmOrganizationActionReply: + value: + type: object type: object - CreateCredential: + Secret: example: - organization_id: organization_id - name: name - description: description + created_at: 2000-01-23T04:56:07.000+00:00 + azure_container_registry: + password: password + registry_name: registry_name + username: username type: null - properties: - name: - title: Credential name - type: string - description: - title: Credential description - type: string - type: - $ref: '#/components/schemas/Credential.Type' - organization_id: - title: Organization id for user credential - type: string - type: object - CreateCredentialReply: - example: - credential: - updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id - organization_id: organization_id - name: name - description: description - created_at: 2000-01-23T04:56:07.000+00:00 - id: id - type: null - token: token - properties: - credential: - $ref: '#/components/schemas/Credential' - type: object - Credential: - example: + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id + github_registry: + password: password + username: username + database_role_password: + password: password + username: username organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username name: name - description: description - created_at: 2000-01-23T04:56:07.000+00:00 id: id - type: null - token: token + value: value + docker_hub_registry: + password: password + username: username properties: id: type: string - type: - $ref: '#/components/schemas/Credential.Type' name: type: string - token: - type: string - description: - type: string - user_id: - type: string organization_id: type: string + type: + $ref: '#/components/schemas/SecretType' updated_at: format: date-time type: string created_at: format: date-time type: string + value: + type: string + docker_hub_registry: + $ref: '#/components/schemas/DockerHubRegistryConfiguration' + private_registry: + $ref: '#/components/schemas/PrivateRegistryConfiguration' + digital_ocean_registry: + $ref: '#/components/schemas/DigitalOceanRegistryConfiguration' + github_registry: + $ref: '#/components/schemas/GitHubRegistryConfiguration' + gitlab_registry: + $ref: '#/components/schemas/GitLabRegistryConfiguration' + gcp_container_registry: + $ref: '#/components/schemas/GCPContainerRegistryConfiguration' + azure_container_registry: + $ref: '#/components/schemas/AzureContainerRegistryConfiguration' + database_role_password: + $ref: '#/components/schemas/DatabaseRolePassword' type: object - Credential.Type: - default: INVALID + SecretType: + default: SIMPLE enum: - - INVALID - - USER - - ORGANIZATION + - SIMPLE + - REGISTRY + - MANAGED type: string - DeleteCredentialReply: - type: object - GetCredentialReply: - example: - credential: - updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id - organization_id: organization_id - name: name - description: description - created_at: 2000-01-23T04:56:07.000+00:00 - id: id - type: null - token: token - properties: - credential: - $ref: '#/components/schemas/Credential' - type: object - ListCredentialsReply: + UpdateSecretReply: example: - offset: 6 - credentials: - - updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id - organization_id: organization_id - name: name - description: description - created_at: 2000-01-23T04:56:07.000+00:00 - id: id - type: null - token: token - - updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id - organization_id: organization_id - name: name - description: description + secret: created_at: 2000-01-23T04:56:07.000+00:00 - id: id + azure_container_registry: + password: password + registry_name: registry_name + username: username type: null - token: token - limit: 0 - count: 1 - properties: - credentials: - items: - $ref: '#/components/schemas/Credential' - type: array - limit: - format: int64 - type: integer - offset: - format: int64 - type: integer - count: - format: int64 - type: integer - type: object - UpdateCredentialReply: - example: - credential: + digital_ocean_registry: + password: password + username: username + gcp_container_registry: + keyfile_content: keyfile_content + url: url updated_at: 2000-01-23T04:56:07.000+00:00 - user_id: user_id + github_registry: + password: password + username: username + database_role_password: + password: password + username: username organization_id: organization_id + private_registry: + password: password + url: url + username: username + gitlab_registry: + password: password + username: username name: name - description: description - created_at: 2000-01-23T04:56:07.000+00:00 id: id - type: null - token: token + value: value + docker_hub_registry: + password: password + username: username properties: - credential: - $ref: '#/components/schemas/Credential' + secret: + $ref: '#/components/schemas/Secret' type: object - DeleteUserReply: + CancelDeploymentReply: + type: object + DeploymentEvent: example: - user: - id: 78352123-a06f-4ec2-81ed-27a056725385 - email: john@snow.com - name: John Snow - avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 - is_admin: false - is_test: true - two_factor_authentication: false - last_login: 0001-01-01T00:00:00Z - last_login_id: 10.1.1.1 - updated_at: 0001-01-01T00:00:00Z - created_at: 0001-01-01T00:00:00Z - newsletter_subscribed: true - email_validated: true + metadata: "{}" + organization_id: organization_id + id: id + deployment_id: deployment_id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 properties: - user: - $ref: '#/components/schemas/User' + id: + type: string + when: + format: date-time + type: string + organization_id: + type: string + deployment_id: + type: string + type: + type: string + message: + type: string + metadata: + properties: {} + type: object type: object - User: + DeploymentListItem: example: - id: 78352123-a06f-4ec2-81ed-27a056725385 - email: john@snow.com - name: John Snow - avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 - is_admin: false - is_test: true - two_factor_authentication: false - last_login: 0001-01-01T00:00:00Z - last_login_id: 10.1.1.1 - updated_at: 0001-01-01T00:00:00Z - created_at: 0001-01-01T00:00:00Z - newsletter_subscribed: true - email_validated: true + metadata: + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + id: id + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 + status: null properties: id: type: string - email: - type: string - avatar_url: - type: string - two_factor_authentication: - type: boolean - last_login: + created_at: format: date-time type: string - last_login_ip: - type: string updated_at: format: date-time type: string - created_at: + allocated_at: format: date-time type: string - newsletter_subscribed: - type: boolean - github_id: - type: string - github_user: - type: string - flags: - items: - $ref: '#/components/schemas/UserFlags' - type: array - name: - type: string - email_validated: - type: boolean - title: Represent a User - type: object - UserFlags: - default: ADMIN - enum: - - ADMIN - - TEST - - RESTRICTED - - ACTIVE - - BETA - title: |- - - ADMIN: A user is an admin user - - TEST: A user is a test user - - RESTRICTED: Whether this account as restricted access - - ACTIVE: Whether this account is active - - BETA: Account in beta program - type: string - LoginReply: - example: - token: - id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... - expires: 2022-09-08T14:00:00Z - user_id: 996d7822-6b58-11e9-956f-32001b70f000 - organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 - properties: - token: - $ref: '#/components/schemas/Token' - type: object - LoginRequest: - example: - email: john@snow.com - password: '...' - properties: - email: - title: User email - type: string - password: - title: User password - type: string - organization_id: - title: (Optional) Login into this organization - type: string - type: object - LogoutReply: - type: object - Token: - example: - id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... - expires: 2022-09-08T14:00:00Z - user_id: 996d7822-6b58-11e9-956f-32001b70f000 - organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 - properties: - id: - type: string - user_id: + started_at: + format: date-time type: string - organization_id: + succeeded_at: + format: date-time type: string - expires_at: + terminated_at: format: date-time type: string - type: object - AcceptOrganizationInvitationReply: - example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - id: id - email: email - invitee_id: invitee_id - status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' - type: object - Action: - default: signin - enum: - - signin - - signup - - register - type: string - CannyAuthReply: - example: - token: token - properties: - token: + organization_id: type: string - type: object - CannyAuthRequest: - type: object - CreateAccountRequest: - description: Create new account - example: - email: john@snow.com - password: '...' - properties: - email: + app_id: type: string - password: + service_id: type: string - name: + parent_id: type: string - captcha: + child_id: type: string - required: - - email - - password - title: Create new account - type: object - CreateOrganizationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - CreateOrganizationRequest: - example: - name: name - properties: - name: + status: + $ref: '#/components/schemas/Deployment.Status' + metadata: + $ref: '#/components/schemas/DeploymentMetadata' + definition: + $ref: '#/components/schemas/DeploymentDefinition' + messages: + items: + type: string + type: array + provisioning_info: + $ref: '#/components/schemas/DeploymentProvisioningInfo' + database_info: + $ref: '#/components/schemas/DeploymentDatabaseInfo' + version: + format: uint64 + type: string + deployment_group: type: string type: object - DeactivateOrganizationReply: + GetDeploymentReply: example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true + deployment: + metadata: + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null properties: - organization: - $ref: '#/components/schemas/Organization' + deployment: + $ref: '#/components/schemas/Deployment' type: object - DeclineOrganizationInvitationReply: + ListDeploymentEventsReply: example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 + offset: 6 + limit: 0 + count: 1 + events: + - metadata: "{}" organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + id: id + deployment_id: deployment_id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + - metadata: "{}" + organization_id: organization_id + id: id + deployment_id: deployment_id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + order: order + properties: + events: + items: + $ref: '#/components/schemas/DeploymentEvent' + title: The collection of events + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer + order: + title: The order in the request + type: string + type: object + ListDeploymentsReply: + example: + deployments: + - metadata: + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 name: name - github_id: github_id - id: id - email: email id: id - email: email - invitee_id: invitee_id + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null - invitee: - github_user: github_user - avatar_url: avatar_url + - metadata: + database: + neon_postgres: + reset_role_passwords: + - reset_role_passwords + - reset_role_passwords + trigger: + actor: null + git: + sender_username: sender_username + provider: null + repository: repository + message: message + branch: branch + sha: sha + sender_avatar_url: sender_avatar_url + sender_profile_url: sender_profile_url + type: null + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + instance_types: + - scopes: + - scopes + - scopes + type: type + - scopes: + - scopes + - scopes + type: type + regions: + - regions + - regions + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + - scopes: + - scopes + - scopes + secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + database: + neon_postgres: + databases: + - owner: owner + name: name + - owner: owner + name: name + roles: + - name: name + secret: secret + - name: name + secret: secret + region: region + pg_version: 4 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + scalings: + - min: 1 + max: 5 + scopes: + - scopes + - scopes + - min: 1 + max: 5 + scopes: + - scopes + - scopes + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 name: name - github_id: github_id - id: id - email: email - properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' - type: object - DeleteOrganizationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id + database_info: + neon_postgres: + endpoint_state: endpoint_state + endpoint_last_active: 2000-01-23T04:56:07.000+00:00 + server_host: server_host + roles: + - secret_id: secret_id + name: name + - secret_id: secret_id + name: name + written_data_bytes: written_data_bytes + data_transfer_bytes: data_transfer_bytes + default_branch_state: default_branch_state + active_time_seconds: active_time_seconds + default_branch_logical_size: default_branch_logical_size + default_branch_name: default_branch_name + server_port: 6 + default_branch_id: default_branch_id + compute_time_seconds: compute_time_seconds + data_storage_bytes_hour: data_storage_bytes_hour + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null + offset: 6 + limit: 0 + count: 1 properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - DiscourseAuthReply: - example: - sig: sig - sso: sso - properties: - sso: - type: string - sig: - type: string - type: object - DiscourseAuthRequest: - example: - sig: sig - payload: payload - properties: - payload: - type: string - sig: - type: string - type: object - GetGithubInstallationReply: - example: - indexing_status: null - indexed_repositories: 0 - avatar_url: avatar_url - installation_url: installation_url - installed_at: 2000-01-23T04:56:07.000+00:00 - installation_id: installation_id - total_repositories: 6 - status: null - suspended_at: 2000-01-23T04:56:07.000+00:00 - properties: - installation_id: - type: string - installation_url: - type: string - avatar_url: - type: string - status: - $ref: '#/components/schemas/kgitproxy.GithubInstallation.Status' - installed_at: - format: date-time - type: string - suspended_at: - format: date-time - type: string - indexing_status: - $ref: '#/components/schemas/kgitproxy.IndexingStatus' - indexed_repositories: - format: int64 - type: integer - total_repositories: - format: int64 - type: integer - type: object - GetOAuthOptionsReply: - description: A list of providers which you can use for single sign-on. - example: - oauth_providers: - - id: id - state: state - url: url - - id: id - state: state - url: url - properties: - oauth_providers: + deployments: items: - $ref: '#/components/schemas/OAuthProvider' + $ref: '#/components/schemas/DeploymentListItem' + title: The collection of deployments type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer type: object - GetOrganizationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - GetUserOrganizationInvitationReply: - example: - invitation: - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - id: id - email: email - invitee_id: invitee_id - status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - properties: - invitation: - $ref: '#/components/schemas/OrganizationInvitation' - type: object - GithubInstallationCallbackReply: - type: object - GithubInstallationCallbackRequest: - example: - setup_action: setup_action - installation_id: installation_id - state: state - properties: - installation_id: - type: string - setup_action: - type: string - state: - type: string - type: object - GithubInstallationReply: - example: - app_name: app_name - state: state - app_id: app_id - url: url - properties: - app_name: - title: The github app name - type: string - app_id: - format: int64 - title: The github app id - type: string - url: - title: The url to start the installation flow - type: string - state: - title: "The state required by the protocol, it is only valid 10 minutes\ - \ and encodes information about the type of flow" - type: string - type: object - GithubInstallationRequest: - example: - metadata: metadata - properties: - metadata: - title: A small (limited to 400 characters) string of arbitrary metadata - which will be encoded in the state - type: string - type: object - InviteUserRequest: + Env: example: - name: name - message: message - email: email + secret: secret + value: value + key: key properties: - email: + key: type: string - name: + value: type: string - message: + secret: type: string type: object - ListUserOrganizationInvitationsReply: + GetRegionalDeploymentReply: example: - offset: 6 - invitations: - - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 - organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - id: id - email: email - invitee_id: invitee_id - status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email - - role: null - expires_at: 2000-01-23T04:56:07.000+00:00 + regional_deployment: + metadata: + runtime_job_id: runtime_job_id + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + datacenters: + - datacenters + - datacenters + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id organization_id: organization_id - organization: - name: name - id: id - plan: null - status: null - inviter_id: inviter_id - inviter: - github_user: github_user - avatar_url: avatar_url + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 name: name - github_id: github_id - id: id - email: email + region: region + instance_type: instance_type id: id - email: email - invitee_id: invitee_id + deployment_id: deployment_id + region: region + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null - invitee: - github_user: github_user - avatar_url: avatar_url - name: name - github_id: github_id - id: id - email: email + properties: + regional_deployment: + $ref: '#/components/schemas/RegionalDeployment' + type: object + ListRegionalDeploymentEventsReply: + example: + offset: 6 limit: 0 count: 1 + events: + - regional_deployment_id: regional_deployment_id + metadata: "{}" + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + - regional_deployment_id: regional_deployment_id + metadata: "{}" + organization_id: organization_id + id: id + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + order: order properties: - invitations: + events: items: - $ref: '#/components/schemas/OrganizationInvitation' - title: The collection of organization invitations + $ref: '#/components/schemas/RegionalDeploymentEvent' + title: The collection of events type: array limit: format: int64 @@ -14893,529 +15546,822 @@ components: format: int64 title: The total number of items type: integer - type: object - ManageReply: - example: - url: url - properties: - url: + order: + title: The order in the request type: string type: object - NextInvoiceReply: - example: - stripe_invoice: "{}" - properties: - stripe_invoice: - properties: {} - type: object - type: object - OAuthCallbackReply: - example: - token: - id: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... - expires: 2022-09-08T14:00:00Z - user_id: 996d7822-6b58-11e9-956f-32001b70f000 - organization_id: 9f33b2c6-6b58-11e9-883c-32001b70f000 - properties: - token: - $ref: '#/components/schemas/Token' - type: object - OAuthCallbackRequest: + ListRegionalDeploymentsReply: example: - code: code - state: state - properties: - state: - title: The state created at the origin of the OAuth flow - type: string - code: - title: The code returned by the OAuth provider - type: string + offset: 2 + regional_deployments: + - updated_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + region: region + instance_type: instance_type + id: id + region: region + status: null + - updated_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + region: region + instance_type: instance_type + id: id + region: region + status: null + limit: 5 + count: 7 + properties: + regional_deployments: + items: + $ref: '#/components/schemas/RegionalDeploymentListItem' + title: The collection of regional deployments + type: array + limit: + format: int64 + title: The limit in the request + type: integer + offset: + format: int64 + title: The offset in the request + type: integer + count: + format: int64 + title: The total number of items + type: integer type: object - OAuthProvider: + Port: example: - id: id - state: state - url: url + protocol: protocol + port: 6 properties: - id: - title: "The name of the provider (.e.g github, google)" - type: string - url: - title: The URL to call to initiate the OAuth flow - type: string - state: - title: "The OAuth state required by the protocol, it is only valid 10 minutes\ - \ and encodes information about the type of flow" + port: + format: int64 + type: integer + protocol: type: string type: object - Organization: + RegionalDeployment: example: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true + metadata: + runtime_job_id: runtime_job_id + created_at: 2000-01-23T04:56:07.000+00:00 + version: version + succeeded_at: 2000-01-23T04:56:07.000+00:00 + datacenters: + - datacenters + - datacenters + updated_at: 2000-01-23T04:56:07.000+00:00 + child_id: child_id + provisioning_info: + image: image + stages: + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + build_attempts: + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + - finished_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + id: 0 + status: null + name: name + messages: + - messages + - messages + started_at: 2000-01-23T04:56:07.000+00:00 + status: null + sha: sha + deployment_group: deployment_group + parent_id: parent_id + organization_id: organization_id + service_id: service_id + started_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + region: region + instance_type: instance_type id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id + deployment_id: deployment_id + region: region + app_id: app_id + terminated_at: 2000-01-23T04:56:07.000+00:00 + allocated_at: 2000-01-23T04:56:07.000+00:00 status: null properties: id: type: string - address1: + created_at: + format: date-time type: string - address2: + updated_at: + format: date-time type: string - city: + allocated_at: + format: date-time type: string - postal_code: + started_at: + format: date-time type: string - state: + succeeded_at: + format: date-time type: string - country: + terminated_at: + format: date-time type: string - company: - type: boolean - vat_number: + organization_id: type: string - billing_name: + app_id: type: string - billing_email: + service_id: + type: string + region: type: string - name: + parent_id: type: string - plan: - $ref: '#/components/schemas/Plan' - plan_updated_at: - format: date-time + child_id: type: string - has_payment_method: - type: boolean - subscription_id: + status: + $ref: '#/components/schemas/RegionalDeployment.Status' + messages: + items: + type: string + type: array + definition: + $ref: '#/components/schemas/RegionalDeploymentDefinition' + datacenters: + items: + type: string + type: array + metadata: + $ref: '#/components/schemas/RegionalDeploymentMetadata' + provisioning_info: + $ref: '#/components/schemas/DeploymentProvisioningInfo' + version: + format: uint64 type: string - current_subscription_id: + deployment_group: + title: Legacy stuff type: string - latest_subscription_id: + deployment_id: type: string - signup_qualification: - properties: {} - type: object - status: - $ref: '#/components/schemas/Organization.Status' - status_message: - $ref: '#/components/schemas/OrganizationDetailedStatus' - deactivation_reason: - $ref: '#/components/schemas/Organization.DeactivationReason' - verified: - type: boolean - qualifies_for_hobby23: - type: boolean - title: Represent an Organization type: object - Organization.DeactivationReason: - default: INVALID - enum: - - INVALID - - REQUESTED_BY_OWNER - - SUBSCRIPTION_TERMINATION - - LOCKED_BY_ADMIN - type: string - OrganizationDetailedStatus: - default: NEW + RegionalDeployment.Status: + default: PENDING enum: - - NEW - - EMAIL_NOT_VALIDATED - - BILLING_INFO_MISSING - - LOCKED - - PAYMENT_FAILURE - - VALID - - PENDING_VERIFICATION - - VERIFICATION_FAILED - - REVIEWING_ACCOUNT - - PLAN_UPGRADE_REQUIRED + - PENDING + - PROVISIONING + - SCHEDULED + - CANCELING + - CANCELED + - ALLOCATING + - STARTING + - HEALTHY + - DEGRADED + - UNHEALTHY + - STOPPING + - STOPPED + - ERRORING + - ERROR type: string - ReactivateOrganizationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - ResendEmailValidationReply: - type: object - ResendEmailValidationRequest: - type: object - ResetPasswordReply: - type: object - ResetPasswordRequest: - example: - email: john@snow.com - properties: - email: - type: string - type: object - UpdateOrganizationPlanReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - UpdateOrganizationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - UpdatePasswordRequest: + RegionalDeploymentDefinition: example: - id: '...' - password: '...' - properties: - id: - type: string - password: - type: string - type: object - UpdateUserRequest.UserUpdateBody: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + region: region + instance_type: instance_type properties: - id: + name: type: string - email: + type: + $ref: '#/components/schemas/RegionalDeploymentDefinition.Type' + routes: + items: + $ref: '#/components/schemas/Route' + type: array + ports: + items: + $ref: '#/components/schemas/Port' + type: array + env: + items: + $ref: '#/components/schemas/Env' + type: array + region: type: string - current_password: + scaling: + $ref: '#/components/schemas/Scaling' + instance_type: type: string - password: + deployment_group: type: string - newsletter_subscribed: + health_checks: + items: + $ref: '#/components/schemas/DeploymentHealthCheck' + type: array + skip_cache: type: boolean - name: - type: string - type: object - UpsertSignupQualificationReply: - example: - organization: - status_message: null - country: country - qualifies_for_hobby23: true - address2: address2 - city: city - address1: address1 - vat_number: vat_number - plan_updated_at: 2000-01-23T04:56:07.000+00:00 - has_payment_method: true - verified: true - billing_name: billing_name - subscription_id: subscription_id - signup_qualification: "{}" - deactivation_reason: null - billing_email: billing_email - name: name - latest_subscription_id: latest_subscription_id - company: true - id: id - state: state - postal_code: postal_code - plan: null - current_subscription_id: current_subscription_id - status: null - properties: - organization: - $ref: '#/components/schemas/Organization' - type: object - UserReply: - example: - user: - id: 78352123-a06f-4ec2-81ed-27a056725385 - email: john@snow.com - name: John Snow - avatar_url: https://www.gravatar.com/avatar/00000000000000000000000000000000 - is_admin: false - is_test: true - two_factor_authentication: false - last_login: 0001-01-01T00:00:00Z - last_login_id: 10.1.1.1 - updated_at: 0001-01-01T00:00:00Z - created_at: 0001-01-01T00:00:00Z - newsletter_subscribed: true - email_validated: true - properties: - user: - $ref: '#/components/schemas/User' - type: object - Empty: + docker: + $ref: '#/components/schemas/DockerSource' + git: + $ref: '#/components/schemas/GitSource' type: object - kgitproxy.GithubInstallation.Status: + RegionalDeploymentDefinition.Type: default: INVALID enum: - INVALID - - INSTALLED - - SUSPENDED - - DELETED - type: string - kgitproxy.IndexingStatus: - default: INVALID_INDEXING_STATUS - enum: - - INVALID_INDEXING_STATUS - - NOT_STARTED - - IN_PROGRESS - - COMPLETED + - WEB + - WORKER type: string - kgitproxy.Branch: + RegionalDeploymentEvent: example: - provider: null + regional_deployment_id: regional_deployment_id + metadata: "{}" organization_id: organization_id - name: name - repository_id: repository_id id: id - is_default: true - is_protected: true + type: type + message: message + when: 2000-01-23T04:56:07.000+00:00 + properties: + id: + type: string + when: + format: date-time + type: string + organization_id: + type: string + regional_deployment_id: + type: string + type: + type: string + message: + type: string + metadata: + properties: {} + type: object + type: object + RegionalDeploymentListItem: + example: + updated_at: 2000-01-23T04:56:07.000+00:00 + created_at: 2000-01-23T04:56:07.000+00:00 + messages: + - messages + - messages + definition: + scaling: + min: 1 + max: 5 + skip_cache: true + type: null + ports: + - protocol: protocol + port: 6 + - protocol: protocol + port: 6 + env: + - secret: secret + value: value + key: key + - secret: secret + value: value + key: key + docker: + args: + - args + - args + privileged: true + image: image + image_registry_secret: image_registry_secret + entrypoint: + - entrypoint + - entrypoint + command: command + routes: + - path: path + port: 0 + - path: path + port: 0 + git: + run_command: run_command + workdir: workdir + build_command: build_command + no_deploy_on_push: true + tag: tag + repository: repository + buildpack: + privileged: true + run_command: run_command + build_command: build_command + branch: branch + sha: sha + docker: + args: + - args + - args + privileged: true + entrypoint: + - entrypoint + - entrypoint + dockerfile: dockerfile + command: command + target: target + deployment_group: deployment_group + health_checks: + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + - tcp: + port: 3 + restart_limit: 7 + http: + path: path + headers: + - value: value + key: key + - value: value + key: key + method: method + port: 2 + interval: 2 + grace_period: 5 + timeout: 9 + name: name + region: region + instance_type: instance_type + id: id + region: region + status: null properties: id: type: string - organization_id: + created_at: + format: date-time type: string - repository_id: + updated_at: + format: date-time type: string - name: + region: type: string - is_default: - type: boolean - is_protected: - type: boolean - provider: - $ref: '#/components/schemas/kgitproxy.RepositoryProvider' + status: + $ref: '#/components/schemas/RegionalDeployment.Status' + messages: + items: + type: string + type: array + definition: + $ref: '#/components/schemas/RegionalDeploymentDefinition' type: object - kgitproxy.GitHubRepository: + RegionalDeploymentMetadata: example: - github_id: github_id + runtime_job_id: runtime_job_id properties: - github_id: + runtime_job_id: type: string type: object - kgitproxy.ListBranchesReply: + Route: example: - offset: 6 - limit: 0 - count: 1 - branches: - - provider: null - organization_id: organization_id - name: name - repository_id: repository_id - id: id - is_default: true - is_protected: true - - provider: null - organization_id: organization_id - name: name - repository_id: repository_id - id: id - is_default: true - is_protected: true + path: path + port: 0 properties: - branches: - description: The collection of branches. - items: - $ref: '#/components/schemas/kgitproxy.Branch' - type: array - limit: - description: The limit in the request. - format: int64 - type: integer - offset: - description: The offset in the request. - format: int64 - type: integer - count: - description: The total number of items. + port: format: int64 type: integer + path: + type: string type: object - kgitproxy.ListRepositoriesReply: + Scaling: example: - offset: 6 - repositories: - - is_private: true - github: - github_id: github_id - last_push_date: 2000-01-23T04:56:07.000+00:00 - provider: null - organization_id: organization_id - is_disabled: true - name: name - description: description - default_branch: default_branch - id: id - url: url - - is_private: true - github: - github_id: github_id - last_push_date: 2000-01-23T04:56:07.000+00:00 - provider: null - organization_id: organization_id - is_disabled: true - name: name - description: description - default_branch: default_branch - id: id - url: url - limit: 0 - count: 1 + min: 1 + max: 5 properties: - repositories: - description: The collection of repositories. - items: - $ref: '#/components/schemas/kgitproxy.Repository' - type: array - limit: - description: The limit in the request. - format: int64 - type: integer - offset: - description: The offset in the request. + min: format: int64 type: integer - count: - description: The total number of items. + max: format: int64 type: integer type: object - kgitproxy.Repository: + ReviewOrganizationCapacityReply: example: - is_private: true - github: - github_id: github_id - last_push_date: 2000-01-23T04:56:07.000+00:00 - provider: null - organization_id: organization_id - is_disabled: true - name: name - description: description - default_branch: default_branch - id: id - url: url + has_capacity: true properties: - id: - type: string - organization_id: - type: string - name: - type: string - url: - type: string - description: - type: string - is_private: - type: boolean - is_disabled: + has_capacity: type: boolean - default_branch: - type: string - provider: - $ref: '#/components/schemas/kgitproxy.RepositoryProvider' - last_push_date: - format: date-time - type: string - github: - $ref: '#/components/schemas/kgitproxy.GitHubRepository' type: object - kgitproxy.RepositoryProvider: - default: INVALID_PROVIDER - enum: - - INVALID_PROVIDER - - GITHUB - type: string - kgitproxy.ResyncOrganizationReply: + ReviewOrganizationCapacityRequest: + example: + plan: plan + properties: + plan: + type: string type: object ksearch.App: example: @@ -15616,9 +16562,124 @@ components: type: string name: type: string - github_user: + github_user: + type: string + type: object + ExecCommandIO: + example: + data: data + close: true + properties: + data: + description: Data is base64 encoded + format: byte + pattern: "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$" + type: string + close: + description: Indicate last data frame + type: boolean + type: object + ExecCommandReply: + example: + stdout: + data: data + close: true + exited: true + exit_code: 0 + stderr: + data: data + close: true + properties: + stdout: + $ref: '#/components/schemas/ExecCommandIO' + stderr: + $ref: '#/components/schemas/ExecCommandIO' + exited: + type: boolean + exit_code: + format: int32 + type: integer + type: object + ExecCommandRequest.Body: + properties: + command: + description: Command to exec. Mandatory in the first frame sent + items: + type: string + type: array + tty_size: + $ref: '#/components/schemas/ExecCommandRequest.TerminalSize' + stdin: + $ref: '#/components/schemas/ExecCommandIO' + type: object + ExecCommandRequest.IdType: + default: INVALID + enum: + - INVALID + - INSTANCE_ID + - SERVICE_ID + type: string + ExecCommandRequest.TerminalSize: + properties: + height: + format: int32 + type: integer + width: + format: int32 + type: integer + type: object + LogEntry: + example: + msg: msg + created_at: 2000-01-23T04:56:07.000+00:00 + labels: "{}" + properties: + msg: + type: string + created_at: + format: date-time type: string + labels: + properties: {} + type: object + type: object + GetMetricsReply: + example: + metrics: + - values: + - - values + - values + - - values + - values + labels: + key: labels + - values: + - - values + - values + - - values + - values + labels: + key: labels + properties: + metrics: + items: + $ref: '#/components/schemas/GetMetricsReply.Metric' + type: array type: object + MetricName: + default: UNKNOWN + enum: + - UNKNOWN + - CPU_TOTAL_PERCENT + - MEM_RSS + - HTTP_THROUGHPUT + - HTTP_RESPONSE_TIME_50P + - HTTP_RESPONSE_TIME_90P + - HTTP_RESPONSE_TIME_99P + - HTTP_RESPONSE_TIME_MAX + - PUBLIC_DATA_TRANSFER_IN + - PUBLIC_DATA_TRANSFER_OUT + type: string CatalogInstance: example: price_monthly: price_monthly @@ -15811,51 +16872,6 @@ components: title: The total number of items type: integer type: object - DatacenterListItem: - example: - domain: domain - region_id: region_id - coordinates: - - coordinates - - coordinates - id: id - properties: - id: - title: e.g. "par1" - type: string - region_id: - title: e.g. "par" - type: string - domain: - title: e.g. "all-par1.infra.prod.koyeb.com" - type: string - coordinates: - items: - type: string - title: "e.g. \"8.856614\" ,\"2.352221\"?" - type: array - type: object - ListDatacentersReply: - example: - datacenters: - - domain: domain - region_id: region_id - coordinates: - - coordinates - - coordinates - id: id - - domain: domain - region_id: region_id - coordinates: - - coordinates - - coordinates - id: id - properties: - datacenters: - items: - $ref: '#/components/schemas/DatacenterListItem' - type: array - type: object GetRegionReply: example: region: @@ -16003,121 +17019,51 @@ components: title: A list of datacenters available in this region type: array type: object - LogEntry: + DatacenterListItem: example: - msg: msg - created_at: 2000-01-23T04:56:07.000+00:00 - labels: "{}" + domain: domain + region_id: region_id + coordinates: + - coordinates + - coordinates + id: id properties: - msg: + id: + title: e.g. "par1" type: string - created_at: - format: date-time + region_id: + title: e.g. "par" type: string - labels: - properties: {} - type: object - type: object - ExecCommandIO: - example: - data: data - close: true - properties: - data: - description: Data is base64 encoded - format: byte - pattern: "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$" + domain: + title: e.g. "all-par1.infra.prod.koyeb.com" type: string - close: - description: Indicate last data frame - type: boolean - type: object - ExecCommandReply: - example: - stdout: - data: data - close: true - exited: true - exit_code: 0 - stderr: - data: data - close: true - properties: - stdout: - $ref: '#/components/schemas/ExecCommandIO' - stderr: - $ref: '#/components/schemas/ExecCommandIO' - exited: - type: boolean - exit_code: - format: int32 - type: integer - type: object - ExecCommandRequest.Body: - properties: - command: - description: Command to exec. Mandatory in the first frame sent + coordinates: items: type: string + title: "e.g. \"8.856614\" ,\"2.352221\"?" type: array - tty_size: - $ref: '#/components/schemas/ExecCommandRequest.TerminalSize' - stdin: - $ref: '#/components/schemas/ExecCommandIO' - type: object - ExecCommandRequest.IdType: - default: INVALID - enum: - - INVALID - - INSTANCE_ID - - SERVICE_ID - type: string - ExecCommandRequest.TerminalSize: - properties: - height: - format: int32 - type: integer - width: - format: int32 - type: integer type: object - GetMetricsReply: + ListDatacentersReply: example: - metrics: - - values: - - - values - - values - - - values - - values - labels: - key: labels - - values: - - - values - - values - - - values - - values - labels: - key: labels + datacenters: + - domain: domain + region_id: region_id + coordinates: + - coordinates + - coordinates + id: id + - domain: domain + region_id: region_id + coordinates: + - coordinates + - coordinates + id: id properties: - metrics: + datacenters: items: - $ref: '#/components/schemas/GetMetricsReply.Metric' + $ref: '#/components/schemas/DatacenterListItem' type: array type: object - MetricName: - default: UNKNOWN - enum: - - UNKNOWN - - CPU_TOTAL_PERCENT - - MEM_RSS - - HTTP_THROUGHPUT - - HTTP_RESPONSE_TIME_50P - - HTTP_RESPONSE_TIME_90P - - HTTP_RESPONSE_TIME_99P - - HTTP_RESPONSE_TIME_MAX - - PUBLIC_DATA_TRANSFER_IN - - PUBLIC_DATA_TRANSFER_OUT - type: string UpdateOrganizationPlan_request: properties: plan: @@ -16129,48 +17075,48 @@ components: properties: {} type: object type: object - Stream_result_of_LogEntry: + Stream_result_of_ExecCommandReply: example: result: - msg: msg - created_at: 2000-01-23T04:56:07.000+00:00 - labels: "{}" + stdout: + data: data + close: true + exited: true + exit_code: 0 + stderr: + data: data + close: true error: - code: 0 + code: 6 details: - '@type': '@type' - '@type': '@type' message: message properties: result: - $ref: '#/components/schemas/LogEntry' + $ref: '#/components/schemas/ExecCommandReply' error: $ref: '#/components/schemas/google.rpc.Status' - title: Stream result of LogEntry + title: Stream result of ExecCommandReply type: object - Stream_result_of_ExecCommandReply: + Stream_result_of_LogEntry: example: result: - stdout: - data: data - close: true - exited: true - exit_code: 0 - stderr: - data: data - close: true + msg: msg + created_at: 2000-01-23T04:56:07.000+00:00 + labels: "{}" error: - code: 0 + code: 6 details: - '@type': '@type' - '@type': '@type' message: message properties: result: - $ref: '#/components/schemas/ExecCommandReply' + $ref: '#/components/schemas/LogEntry' error: $ref: '#/components/schemas/google.rpc.Status' - title: Stream result of ExecCommandReply + title: Stream result of LogEntry type: object securitySchemes: Bearer: diff --git a/api/v1/koyeb/api_activity.go b/api/v1/koyeb/api_activity.go index cb96f44e..14052103 100644 --- a/api/v1/koyeb/api_activity.go +++ b/api/v1/koyeb/api_activity.go @@ -186,6 +186,17 @@ func (a *ActivityApiService) GetAccountActivitiesExecute(r ApiGetAccountActiviti newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -207,6 +218,17 @@ func (a *ActivityApiService) GetAccountActivitiesExecute(r ApiGetAccountActiviti newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -356,6 +378,17 @@ func (a *ActivityApiService) ListActivitiesExecute(r ApiListActivitiesRequest) ( newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -377,6 +410,17 @@ func (a *ActivityApiService) ListActivitiesExecute(r ApiListActivitiesRequest) ( newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -562,6 +606,17 @@ func (a *ActivityApiService) ListNotificationsExecute(r ApiListNotificationsRequ newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -583,6 +638,17 @@ func (a *ActivityApiService) ListNotificationsExecute(r ApiListNotificationsRequ newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_billing.go b/api/v1/koyeb/api_billing.go index a7a227b1..7a9d66c0 100644 --- a/api/v1/koyeb/api_billing.go +++ b/api/v1/koyeb/api_billing.go @@ -160,6 +160,17 @@ func (a *BillingApiService) ManageExecute(r ApiManageRequest) (*ManageReply, *ht newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -181,6 +192,17 @@ func (a *BillingApiService) ManageExecute(r ApiManageRequest) (*ManageReply, *ht newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -316,6 +338,17 @@ func (a *BillingApiService) NextInvoiceExecute(r ApiNextInvoiceRequest) (*NextIn newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -337,6 +370,17 @@ func (a *BillingApiService) NextInvoiceExecute(r ApiNextInvoiceRequest) (*NextIn newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_credentials.go b/api/v1/koyeb/api_credentials.go index 6c4e18ec..3d5b3206 100644 --- a/api/v1/koyeb/api_credentials.go +++ b/api/v1/koyeb/api_credentials.go @@ -220,6 +220,17 @@ func (a *CredentialsApiService) CreateCredentialExecute(r ApiCreateCredentialReq newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -241,6 +252,17 @@ func (a *CredentialsApiService) CreateCredentialExecute(r ApiCreateCredentialReq newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -376,6 +398,17 @@ func (a *CredentialsApiService) DeleteCredentialExecute(r ApiDeleteCredentialReq newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -397,6 +430,17 @@ func (a *CredentialsApiService) DeleteCredentialExecute(r ApiDeleteCredentialReq newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -532,6 +576,17 @@ func (a *CredentialsApiService) GetCredentialExecute(r ApiGetCredentialRequest) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -553,6 +608,17 @@ func (a *CredentialsApiService) GetCredentialExecute(r ApiGetCredentialRequest) newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -744,6 +810,17 @@ func (a *CredentialsApiService) ListCredentialsExecute(r ApiListCredentialsReque newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -765,6 +842,17 @@ func (a *CredentialsApiService) ListCredentialsExecute(r ApiListCredentialsReque newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -920,6 +1008,17 @@ func (a *CredentialsApiService) UpdateCredentialExecute(r ApiUpdateCredentialReq newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -941,6 +1040,17 @@ func (a *CredentialsApiService) UpdateCredentialExecute(r ApiUpdateCredentialReq newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1096,6 +1206,17 @@ func (a *CredentialsApiService) UpdateCredential2Execute(r ApiUpdateCredential2R newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1117,6 +1238,17 @@ func (a *CredentialsApiService) UpdateCredential2Execute(r ApiUpdateCredential2R newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_instances.go b/api/v1/koyeb/api_instances.go index 42c4cba9..b43c5d12 100644 --- a/api/v1/koyeb/api_instances.go +++ b/api/v1/koyeb/api_instances.go @@ -263,6 +263,17 @@ func (a *InstancesApiService) ExecCommandExecute(r ApiExecCommandRequest) (*Stre newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -284,6 +295,17 @@ func (a *InstancesApiService) ExecCommandExecute(r ApiExecCommandRequest) (*Stre newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_invite.go b/api/v1/koyeb/api_invite.go index 960536ca..f0e02761 100644 --- a/api/v1/koyeb/api_invite.go +++ b/api/v1/koyeb/api_invite.go @@ -155,6 +155,17 @@ func (a *InviteApiService) CreateInviteExecute(r ApiCreateInviteRequest) (map[st newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -176,6 +187,17 @@ func (a *InviteApiService) CreateInviteExecute(r ApiCreateInviteRequest) (map[st newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_logs.go b/api/v1/koyeb/api_logs.go index 690c7808..b4a280ae 100644 --- a/api/v1/koyeb/api_logs.go +++ b/api/v1/koyeb/api_logs.go @@ -225,6 +225,17 @@ func (a *LogsApiService) TailLogsExecute(r ApiTailLogsRequest) (*StreamResultOfL newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -246,6 +257,17 @@ func (a *LogsApiService) TailLogsExecute(r ApiTailLogsRequest) (*StreamResultOfL newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_metrics.go b/api/v1/koyeb/api_metrics.go index 2650fec8..584d30d9 100644 --- a/api/v1/koyeb/api_metrics.go +++ b/api/v1/koyeb/api_metrics.go @@ -205,6 +205,17 @@ func (a *MetricsApiService) GetMetricsExecute(r ApiGetMetricsRequest) (*GetMetri newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -226,6 +237,17 @@ func (a *MetricsApiService) GetMetricsExecute(r ApiGetMetricsRequest) (*GetMetri newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_organization.go b/api/v1/koyeb/api_organization.go index 2a7bd6ad..b26b1a7b 100644 --- a/api/v1/koyeb/api_organization.go +++ b/api/v1/koyeb/api_organization.go @@ -309,6 +309,17 @@ func (a *OrganizationApiService) CreateOrganizationExecute(r ApiCreateOrganizati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -330,6 +341,17 @@ func (a *OrganizationApiService) CreateOrganizationExecute(r ApiCreateOrganizati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -476,6 +498,17 @@ func (a *OrganizationApiService) DeactivateOrganizationExecute(r ApiDeactivateOr newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -497,6 +530,17 @@ func (a *OrganizationApiService) DeactivateOrganizationExecute(r ApiDeactivateOr newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -632,6 +676,17 @@ func (a *OrganizationApiService) DeleteOrganizationExecute(r ApiDeleteOrganizati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -653,6 +708,17 @@ func (a *OrganizationApiService) DeleteOrganizationExecute(r ApiDeleteOrganizati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -784,6 +850,17 @@ func (a *OrganizationApiService) GetGithubInstallationExecute(r ApiGetGithubInst newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -805,6 +882,17 @@ func (a *OrganizationApiService) GetGithubInstallationExecute(r ApiGetGithubInst newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -940,6 +1028,17 @@ func (a *OrganizationApiService) GetOrganizationExecute(r ApiGetOrganizationRequ newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -961,6 +1060,17 @@ func (a *OrganizationApiService) GetOrganizationExecute(r ApiGetOrganizationRequ newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1103,6 +1213,17 @@ func (a *OrganizationApiService) GithubInstallationExecute(r ApiGithubInstallati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1124,6 +1245,17 @@ func (a *OrganizationApiService) GithubInstallationExecute(r ApiGithubInstallati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1266,6 +1398,17 @@ func (a *OrganizationApiService) GithubInstallationCallbackExecute(r ApiGithubIn newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1287,6 +1430,17 @@ func (a *OrganizationApiService) GithubInstallationCallbackExecute(r ApiGithubIn newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1433,6 +1587,17 @@ func (a *OrganizationApiService) ReactivateOrganizationExecute(r ApiReactivateOr newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1454,6 +1619,17 @@ func (a *OrganizationApiService) ReactivateOrganizationExecute(r ApiReactivateOr newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1610,6 +1786,17 @@ func (a *OrganizationApiService) SwitchOrganizationExecute(r ApiSwitchOrganizati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1631,6 +1818,17 @@ func (a *OrganizationApiService) SwitchOrganizationExecute(r ApiSwitchOrganizati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1786,6 +1984,17 @@ func (a *OrganizationApiService) UpdateOrganizationExecute(r ApiUpdateOrganizati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1807,6 +2016,17 @@ func (a *OrganizationApiService) UpdateOrganizationExecute(r ApiUpdateOrganizati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1962,6 +2182,17 @@ func (a *OrganizationApiService) UpdateOrganization2Execute(r ApiUpdateOrganizat newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1983,6 +2214,17 @@ func (a *OrganizationApiService) UpdateOrganization2Execute(r ApiUpdateOrganizat newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2129,6 +2371,17 @@ func (a *OrganizationApiService) UpdateOrganizationPlanExecute(r ApiUpdateOrgani newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2150,6 +2403,17 @@ func (a *OrganizationApiService) UpdateOrganizationPlanExecute(r ApiUpdateOrgani newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2296,6 +2560,17 @@ func (a *OrganizationApiService) UpsertSignupQualificationExecute(r ApiUpsertSig newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2317,6 +2592,17 @@ func (a *OrganizationApiService) UpsertSignupQualificationExecute(r ApiUpsertSig newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_organization_confirmations.go b/api/v1/koyeb/api_organization_confirmations.go index 8dc1d653..60132452 100644 --- a/api/v1/koyeb/api_organization_confirmations.go +++ b/api/v1/koyeb/api_organization_confirmations.go @@ -150,6 +150,17 @@ func (a *OrganizationConfirmationsApiService) ConfirmOrganizationActionExecute(r newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -171,6 +182,17 @@ func (a *OrganizationConfirmationsApiService) ConfirmOrganizationActionExecute(r newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_organization_invitations.go b/api/v1/koyeb/api_organization_invitations.go index 5114900d..b7503e4f 100644 --- a/api/v1/koyeb/api_organization_invitations.go +++ b/api/v1/koyeb/api_organization_invitations.go @@ -208,6 +208,17 @@ func (a *OrganizationInvitationsApiService) CreateOrganizationInvitationExecute( newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -229,6 +240,17 @@ func (a *OrganizationInvitationsApiService) CreateOrganizationInvitationExecute( newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -364,6 +386,17 @@ func (a *OrganizationInvitationsApiService) DeleteOrganizationInvitationExecute( newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -385,6 +418,17 @@ func (a *OrganizationInvitationsApiService) DeleteOrganizationInvitationExecute( newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -520,6 +564,17 @@ func (a *OrganizationInvitationsApiService) GetOrganizationInvitationExecute(r A newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -541,6 +596,17 @@ func (a *OrganizationInvitationsApiService) GetOrganizationInvitationExecute(r A newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -720,6 +786,17 @@ func (a *OrganizationInvitationsApiService) ListOrganizationInvitationsExecute(r newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -741,6 +818,17 @@ func (a *OrganizationInvitationsApiService) ListOrganizationInvitationsExecute(r newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -887,6 +975,17 @@ func (a *OrganizationInvitationsApiService) ResendOrganizationInvitationExecute( newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -908,6 +1007,17 @@ func (a *OrganizationInvitationsApiService) ResendOrganizationInvitationExecute( newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_organization_members.go b/api/v1/koyeb/api_organization_members.go index 12e083cc..087ad30f 100644 --- a/api/v1/koyeb/api_organization_members.go +++ b/api/v1/koyeb/api_organization_members.go @@ -198,6 +198,17 @@ func (a *OrganizationMembersApiService) ListOrganizationMembersExecute(r ApiList newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -219,6 +230,17 @@ func (a *OrganizationMembersApiService) ListOrganizationMembersExecute(r ApiList newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -354,6 +376,17 @@ func (a *OrganizationMembersApiService) RemoveOrganizationMemberExecute(r ApiRem newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -375,6 +408,17 @@ func (a *OrganizationMembersApiService) RemoveOrganizationMemberExecute(r ApiRem newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_organization_quotas.go b/api/v1/koyeb/api_organization_quotas.go new file mode 100644 index 00000000..81c405ef --- /dev/null +++ b/api/v1/koyeb/api_organization_quotas.go @@ -0,0 +1,218 @@ +/* +Koyeb Rest API + +The Koyeb API allows you to interact with the Koyeb platform in a simple, programmatic way using conventional HTTP requests. + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package koyeb + +import ( + "bytes" + "context" + "io/ioutil" + "net/http" + "net/url" + "strings" +) + + +type OrganizationQuotasApi interface { + + /* + GetQuotas Method for GetQuotas + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param organizationId + @return ApiGetQuotasRequest + */ + GetQuotas(ctx context.Context, organizationId string) ApiGetQuotasRequest + + // GetQuotasExecute executes the request + // @return GetQuotasReply + GetQuotasExecute(r ApiGetQuotasRequest) (*GetQuotasReply, *http.Response, error) +} + +// OrganizationQuotasApiService OrganizationQuotasApi service +type OrganizationQuotasApiService service + +type ApiGetQuotasRequest struct { + ctx context.Context + ApiService OrganizationQuotasApi + organizationId string +} + +func (r ApiGetQuotasRequest) Execute() (*GetQuotasReply, *http.Response, error) { + return r.ApiService.GetQuotasExecute(r) +} + +/* +GetQuotas Method for GetQuotas + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param organizationId + @return ApiGetQuotasRequest +*/ +func (a *OrganizationQuotasApiService) GetQuotas(ctx context.Context, organizationId string) ApiGetQuotasRequest { + return ApiGetQuotasRequest{ + ApiService: a, + ctx: ctx, + organizationId: organizationId, + } +} + +// Execute executes the request +// @return GetQuotasReply +func (a *OrganizationQuotasApiService) GetQuotasExecute(r ApiGetQuotasRequest) (*GetQuotasReply, *http.Response, error) { + var ( + localVarHTTPMethod = http.MethodGet + localVarPostBody interface{} + formFiles []formFile + localVarReturnValue *GetQuotasReply + ) + + localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "OrganizationQuotasApiService.GetQuotas") + if err != nil { + return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/v1/organizations/{organization_id}/quotas" + localVarPath = strings.Replace(localVarPath, "{"+"organization_id"+"}", url.PathEscape(parameterToString(r.organizationId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"*/*"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if apiKey, ok := auth["Bearer"]; ok { + var key string + if apiKey.Prefix != "" { + key = apiKey.Prefix + " " + apiKey.Key + } else { + key = apiKey.Key + } + localVarHeaderParams["Authorization"] = key + } + } + } + req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := a.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + localVarHTTPResponse.Body = ioutil.NopCloser(bytes.NewBuffer(localVarBody)) + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := &GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v ErrorWithFields + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + var v GoogleRpcStatus + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := &GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} diff --git a/api/v1/koyeb/api_payment_methods.go b/api/v1/koyeb/api_payment_methods.go index 44af9702..8e14c32e 100644 --- a/api/v1/koyeb/api_payment_methods.go +++ b/api/v1/koyeb/api_payment_methods.go @@ -212,6 +212,17 @@ func (a *PaymentMethodsApiService) ConfirmPaymentAuthorizationExecute(r ApiConfi newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -233,6 +244,17 @@ func (a *PaymentMethodsApiService) ConfirmPaymentAuthorizationExecute(r ApiConfi newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -375,6 +397,17 @@ func (a *PaymentMethodsApiService) CreatePaymentAuthorizationExecute(r ApiCreate newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -396,6 +429,17 @@ func (a *PaymentMethodsApiService) CreatePaymentAuthorizationExecute(r ApiCreate newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -531,6 +575,17 @@ func (a *PaymentMethodsApiService) DeletePaymentMethodExecute(r ApiDeletePayment newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -552,6 +607,17 @@ func (a *PaymentMethodsApiService) DeletePaymentMethodExecute(r ApiDeletePayment newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -687,6 +753,17 @@ func (a *PaymentMethodsApiService) GetPaymentMethodExecute(r ApiGetPaymentMethod newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -708,6 +785,17 @@ func (a *PaymentMethodsApiService) GetPaymentMethodExecute(r ApiGetPaymentMethod newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -877,6 +965,17 @@ func (a *PaymentMethodsApiService) ListPaymentMethodsExecute(r ApiListPaymentMet newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -898,6 +997,17 @@ func (a *PaymentMethodsApiService) ListPaymentMethodsExecute(r ApiListPaymentMet newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_profile.go b/api/v1/koyeb/api_profile.go index 8e1a433a..3a98ab45 100644 --- a/api/v1/koyeb/api_profile.go +++ b/api/v1/koyeb/api_profile.go @@ -333,6 +333,17 @@ func (a *ProfileApiService) AcceptOrganizationInvitationExecute(r ApiAcceptOrgan newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -354,6 +365,17 @@ func (a *ProfileApiService) AcceptOrganizationInvitationExecute(r ApiAcceptOrgan newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -500,6 +522,17 @@ func (a *ProfileApiService) DeclineOrganizationInvitationExecute(r ApiDeclineOrg newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -521,6 +554,17 @@ func (a *ProfileApiService) DeclineOrganizationInvitationExecute(r ApiDeclineOrg newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -652,6 +696,17 @@ func (a *ProfileApiService) GetCurrentOrganizationExecute(r ApiGetCurrentOrganiz newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -673,6 +728,17 @@ func (a *ProfileApiService) GetCurrentOrganizationExecute(r ApiGetCurrentOrganiz newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -804,6 +870,17 @@ func (a *ProfileApiService) GetCurrentUserExecute(r ApiGetCurrentUserRequest) (* newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -825,6 +902,17 @@ func (a *ProfileApiService) GetCurrentUserExecute(r ApiGetCurrentUserRequest) (* newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -976,6 +1064,17 @@ func (a *ProfileApiService) GetOAuthOptionsExecute(r ApiGetOAuthOptionsRequest) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -997,6 +1096,17 @@ func (a *ProfileApiService) GetOAuthOptionsExecute(r ApiGetOAuthOptionsRequest) newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1132,6 +1242,17 @@ func (a *ProfileApiService) GetUserOrganizationInvitationExecute(r ApiGetUserOrg newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1153,6 +1274,17 @@ func (a *ProfileApiService) GetUserOrganizationInvitationExecute(r ApiGetUserOrg newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1322,6 +1454,17 @@ func (a *ProfileApiService) ListUserOrganizationInvitationsExecute(r ApiListUser newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1343,6 +1486,17 @@ func (a *ProfileApiService) ListUserOrganizationInvitationsExecute(r ApiListUser newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1495,6 +1649,17 @@ func (a *ProfileApiService) OAuthCallbackExecute(r ApiOAuthCallbackRequest) (*OA newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1516,6 +1681,17 @@ func (a *ProfileApiService) OAuthCallbackExecute(r ApiOAuthCallbackRequest) (*OA newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1658,6 +1834,17 @@ func (a *ProfileApiService) ResendEmailValidationExecute(r ApiResendEmailValidat newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1679,6 +1866,17 @@ func (a *ProfileApiService) ResendEmailValidationExecute(r ApiResendEmailValidat newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1821,6 +2019,17 @@ func (a *ProfileApiService) ResetPasswordExecute(r ApiResetPasswordRequest) (map newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1842,6 +2051,17 @@ func (a *ProfileApiService) ResetPasswordExecute(r ApiResetPasswordRequest) (map newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1995,6 +2215,17 @@ func (a *ProfileApiService) SignupExecute(r ApiSignupRequest) (*LoginReply, *htt newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2016,6 +2247,17 @@ func (a *ProfileApiService) SignupExecute(r ApiSignupRequest) (*LoginReply, *htt newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2168,6 +2410,17 @@ func (a *ProfileApiService) UpdatePasswordExecute(r ApiUpdatePasswordRequest) (* newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2189,6 +2442,17 @@ func (a *ProfileApiService) UpdatePasswordExecute(r ApiUpdatePasswordRequest) (* newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2340,6 +2604,17 @@ func (a *ProfileApiService) UpdateUserExecute(r ApiUpdateUserRequest) (*UserRepl newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2361,6 +2636,17 @@ func (a *ProfileApiService) UpdateUserExecute(r ApiUpdateUserRequest) (*UserRepl newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2512,6 +2798,17 @@ func (a *ProfileApiService) UpdateUser2Execute(r ApiUpdateUser2Request) (*UserRe newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2533,6 +2830,17 @@ func (a *ProfileApiService) UpdateUser2Execute(r ApiUpdateUser2Request) (*UserRe newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2678,6 +2986,17 @@ func (a *ProfileApiService) ValidateExecute(r ApiValidateRequest) (*LoginReply, newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2699,6 +3018,17 @@ func (a *ProfileApiService) ValidateExecute(r ApiValidateRequest) (*LoginReply, newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_repositories.go b/api/v1/koyeb/api_repositories.go index 4f57ae76..9e8a230c 100644 --- a/api/v1/koyeb/api_repositories.go +++ b/api/v1/koyeb/api_repositories.go @@ -210,6 +210,17 @@ func (a *RepositoriesApiService) ListBranchesExecute(r ApiListBranchesRequest) ( newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -231,6 +242,17 @@ func (a *RepositoriesApiService) ListBranchesExecute(r ApiListBranchesRequest) ( newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -392,6 +414,17 @@ func (a *RepositoriesApiService) ListRepositoriesExecute(r ApiListRepositoriesRe newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -413,6 +446,17 @@ func (a *RepositoriesApiService) ListRepositoriesExecute(r ApiListRepositoriesRe newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -548,6 +592,17 @@ func (a *RepositoriesApiService) ResyncOrganizationExecute(r ApiResyncOrganizati newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -569,6 +624,17 @@ func (a *RepositoriesApiService) ResyncOrganizationExecute(r ApiResyncOrganizati newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_search.go b/api/v1/koyeb/api_search.go index 8ab070e9..e102f918 100644 --- a/api/v1/koyeb/api_search.go +++ b/api/v1/koyeb/api_search.go @@ -154,6 +154,17 @@ func (a *SearchApiService) SearchExecute(r ApiSearchRequest) (*KsearchSearchRepl newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -175,6 +186,17 @@ func (a *SearchApiService) SearchExecute(r ApiSearchRequest) (*KsearchSearchRepl newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_sessions.go b/api/v1/koyeb/api_sessions.go index a5a0751d..c448f06a 100644 --- a/api/v1/koyeb/api_sessions.go +++ b/api/v1/koyeb/api_sessions.go @@ -204,6 +204,17 @@ func (a *SessionsApiService) LoginExecute(r ApiLoginRequest) (*LoginReply, *http newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -225,6 +236,17 @@ func (a *SessionsApiService) LoginExecute(r ApiLoginRequest) (*LoginReply, *http newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -356,6 +378,17 @@ func (a *SessionsApiService) LogoutExecute(r ApiLogoutRequest) (map[string]inter newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -377,6 +410,17 @@ func (a *SessionsApiService) LogoutExecute(r ApiLogoutRequest) (map[string]inter newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -511,6 +555,17 @@ func (a *SessionsApiService) NewSessionExecute(r ApiNewSessionRequest) (*LoginRe newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -532,6 +587,17 @@ func (a *SessionsApiService) NewSessionExecute(r ApiNewSessionRequest) (*LoginRe newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -663,6 +729,17 @@ func (a *SessionsApiService) RefreshTokenExecute(r ApiRefreshTokenRequest) (*Log newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -684,6 +761,17 @@ func (a *SessionsApiService) RefreshTokenExecute(r ApiRefreshTokenRequest) (*Log newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_sso.go b/api/v1/koyeb/api_sso.go index 5e951290..1ae25dbf 100644 --- a/api/v1/koyeb/api_sso.go +++ b/api/v1/koyeb/api_sso.go @@ -167,6 +167,17 @@ func (a *SsoApiService) CannyAuthExecute(r ApiCannyAuthRequest) (*CannyAuthReply newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -188,6 +199,17 @@ func (a *SsoApiService) CannyAuthExecute(r ApiCannyAuthRequest) (*CannyAuthReply newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -330,6 +352,17 @@ func (a *SsoApiService) DiscourseAuthExecute(r ApiDiscourseAuthRequest) (*Discou newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -351,6 +384,17 @@ func (a *SsoApiService) DiscourseAuthExecute(r ApiDiscourseAuthRequest) (*Discou newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_subscriptions.go b/api/v1/koyeb/api_subscriptions.go index b06718a7..0df0cafd 100644 --- a/api/v1/koyeb/api_subscriptions.go +++ b/api/v1/koyeb/api_subscriptions.go @@ -150,6 +150,17 @@ func (a *SubscriptionsApiService) GetSubscriptionExecute(r ApiGetSubscriptionReq newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -171,6 +182,17 @@ func (a *SubscriptionsApiService) GetSubscriptionExecute(r ApiGetSubscriptionReq newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/api_users.go b/api/v1/koyeb/api_users.go index 308afb82..c32e02c5 100644 --- a/api/v1/koyeb/api_users.go +++ b/api/v1/koyeb/api_users.go @@ -150,6 +150,17 @@ func (a *UsersApiService) DeleteUserExecute(r ApiDeleteUserRequest) (*DeleteUser newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr } + if localVarHTTPResponse.StatusCode == 401 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v Error err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -171,6 +182,17 @@ func (a *UsersApiService) DeleteUserExecute(r ApiDeleteUserRequest) (*DeleteUser newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) newErr.model = v return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 500 { + var v Error + err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr } var v GoogleRpcStatus err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/api/v1/koyeb/client.go b/api/v1/koyeb/client.go index c90d0af0..0d26167c 100644 --- a/api/v1/koyeb/client.go +++ b/api/v1/koyeb/client.go @@ -83,6 +83,8 @@ type APIClient struct { OrganizationMembersApi OrganizationMembersApi + OrganizationQuotasApi OrganizationQuotasApi + PaymentMethodsApi PaymentMethodsApi ProfileApi ProfileApi @@ -143,6 +145,7 @@ func NewAPIClient(cfg *Configuration) *APIClient { c.OrganizationConfirmationsApi = (*OrganizationConfirmationsApiService)(&c.common) c.OrganizationInvitationsApi = (*OrganizationInvitationsApiService)(&c.common) c.OrganizationMembersApi = (*OrganizationMembersApiService)(&c.common) + c.OrganizationQuotasApi = (*OrganizationQuotasApiService)(&c.common) c.PaymentMethodsApi = (*PaymentMethodsApiService)(&c.common) c.ProfileApi = (*ProfileApiService)(&c.common) c.QuotasApi = (*QuotasApiService)(&c.common) diff --git a/api/v1/koyeb/docs/GetQuotasReply.md b/api/v1/koyeb/docs/GetQuotasReply.md new file mode 100644 index 00000000..cf7fd970 --- /dev/null +++ b/api/v1/koyeb/docs/GetQuotasReply.md @@ -0,0 +1,56 @@ +# GetQuotasReply + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Quotas** | Pointer to [**Quotas**](Quotas.md) | | [optional] + +## Methods + +### NewGetQuotasReply + +`func NewGetQuotasReply() *GetQuotasReply` + +NewGetQuotasReply instantiates a new GetQuotasReply object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewGetQuotasReplyWithDefaults + +`func NewGetQuotasReplyWithDefaults() *GetQuotasReply` + +NewGetQuotasReplyWithDefaults instantiates a new GetQuotasReply object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetQuotas + +`func (o *GetQuotasReply) GetQuotas() Quotas` + +GetQuotas returns the Quotas field if non-nil, zero value otherwise. + +### GetQuotasOk + +`func (o *GetQuotasReply) GetQuotasOk() (*Quotas, bool)` + +GetQuotasOk returns a tuple with the Quotas field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetQuotas + +`func (o *GetQuotasReply) SetQuotas(v Quotas)` + +SetQuotas sets Quotas field to given value. + +### HasQuotas + +`func (o *GetQuotasReply) HasQuotas() bool` + +HasQuotas returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v1/koyeb/docs/OrganizationQuotasApi.md b/api/v1/koyeb/docs/OrganizationQuotasApi.md new file mode 100644 index 00000000..2b3c29c2 --- /dev/null +++ b/api/v1/koyeb/docs/OrganizationQuotasApi.md @@ -0,0 +1,77 @@ +# \OrganizationQuotasApi + +All URIs are relative to *https://app.koyeb.com* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**GetQuotas**](OrganizationQuotasApi.md#GetQuotas) | **Get** /v1/organizations/{organization_id}/quotas | + + + +## GetQuotas + +> GetQuotasReply GetQuotas(ctx, organizationId).Execute() + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + openapiclient "./openapi" +) + +func main() { + organizationId := "organizationId_example" // string | + + configuration := openapiclient.NewConfiguration() + apiClient := openapiclient.NewAPIClient(configuration) + resp, r, err := apiClient.OrganizationQuotasApi.GetQuotas(context.Background(), organizationId).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `OrganizationQuotasApi.GetQuotas``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `GetQuotas`: GetQuotasReply + fmt.Fprintf(os.Stdout, "Response from `OrganizationQuotasApi.GetQuotas`: %v\n", resp) +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**organizationId** | **string** | | + +### Other Parameters + +Other parameters are passed through a pointer to a apiGetQuotasRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + +### Return type + +[**GetQuotasReply**](GetQuotasReply.md) + +### Authorization + +[Bearer](../README.md#Bearer) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: */* + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + diff --git a/api/v1/koyeb/docs/Quotas.md b/api/v1/koyeb/docs/Quotas.md new file mode 100644 index 00000000..3e61c994 --- /dev/null +++ b/api/v1/koyeb/docs/Quotas.md @@ -0,0 +1,290 @@ +# Quotas + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Apps** | Pointer to **string** | | [optional] +**Services** | Pointer to **string** | | [optional] +**Domains** | Pointer to **string** | | [optional] +**ServicesByApp** | Pointer to **string** | | [optional] +**ServiceProvisioningConcurrency** | Pointer to **string** | | [optional] +**MemoryMb** | Pointer to **string** | | [optional] +**InstanceTypes** | Pointer to **[]string** | | [optional] +**Regions** | Pointer to **[]string** | | [optional] +**MaxOrganizationMembers** | Pointer to **string** | | [optional] +**MaxInstancesByType** | Pointer to **map[string]string** | | [optional] + +## Methods + +### NewQuotas + +`func NewQuotas() *Quotas` + +NewQuotas instantiates a new Quotas object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewQuotasWithDefaults + +`func NewQuotasWithDefaults() *Quotas` + +NewQuotasWithDefaults instantiates a new Quotas object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetApps + +`func (o *Quotas) GetApps() string` + +GetApps returns the Apps field if non-nil, zero value otherwise. + +### GetAppsOk + +`func (o *Quotas) GetAppsOk() (*string, bool)` + +GetAppsOk returns a tuple with the Apps field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetApps + +`func (o *Quotas) SetApps(v string)` + +SetApps sets Apps field to given value. + +### HasApps + +`func (o *Quotas) HasApps() bool` + +HasApps returns a boolean if a field has been set. + +### GetServices + +`func (o *Quotas) GetServices() string` + +GetServices returns the Services field if non-nil, zero value otherwise. + +### GetServicesOk + +`func (o *Quotas) GetServicesOk() (*string, bool)` + +GetServicesOk returns a tuple with the Services field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetServices + +`func (o *Quotas) SetServices(v string)` + +SetServices sets Services field to given value. + +### HasServices + +`func (o *Quotas) HasServices() bool` + +HasServices returns a boolean if a field has been set. + +### GetDomains + +`func (o *Quotas) GetDomains() string` + +GetDomains returns the Domains field if non-nil, zero value otherwise. + +### GetDomainsOk + +`func (o *Quotas) GetDomainsOk() (*string, bool)` + +GetDomainsOk returns a tuple with the Domains field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetDomains + +`func (o *Quotas) SetDomains(v string)` + +SetDomains sets Domains field to given value. + +### HasDomains + +`func (o *Quotas) HasDomains() bool` + +HasDomains returns a boolean if a field has been set. + +### GetServicesByApp + +`func (o *Quotas) GetServicesByApp() string` + +GetServicesByApp returns the ServicesByApp field if non-nil, zero value otherwise. + +### GetServicesByAppOk + +`func (o *Quotas) GetServicesByAppOk() (*string, bool)` + +GetServicesByAppOk returns a tuple with the ServicesByApp field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetServicesByApp + +`func (o *Quotas) SetServicesByApp(v string)` + +SetServicesByApp sets ServicesByApp field to given value. + +### HasServicesByApp + +`func (o *Quotas) HasServicesByApp() bool` + +HasServicesByApp returns a boolean if a field has been set. + +### GetServiceProvisioningConcurrency + +`func (o *Quotas) GetServiceProvisioningConcurrency() string` + +GetServiceProvisioningConcurrency returns the ServiceProvisioningConcurrency field if non-nil, zero value otherwise. + +### GetServiceProvisioningConcurrencyOk + +`func (o *Quotas) GetServiceProvisioningConcurrencyOk() (*string, bool)` + +GetServiceProvisioningConcurrencyOk returns a tuple with the ServiceProvisioningConcurrency field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetServiceProvisioningConcurrency + +`func (o *Quotas) SetServiceProvisioningConcurrency(v string)` + +SetServiceProvisioningConcurrency sets ServiceProvisioningConcurrency field to given value. + +### HasServiceProvisioningConcurrency + +`func (o *Quotas) HasServiceProvisioningConcurrency() bool` + +HasServiceProvisioningConcurrency returns a boolean if a field has been set. + +### GetMemoryMb + +`func (o *Quotas) GetMemoryMb() string` + +GetMemoryMb returns the MemoryMb field if non-nil, zero value otherwise. + +### GetMemoryMbOk + +`func (o *Quotas) GetMemoryMbOk() (*string, bool)` + +GetMemoryMbOk returns a tuple with the MemoryMb field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetMemoryMb + +`func (o *Quotas) SetMemoryMb(v string)` + +SetMemoryMb sets MemoryMb field to given value. + +### HasMemoryMb + +`func (o *Quotas) HasMemoryMb() bool` + +HasMemoryMb returns a boolean if a field has been set. + +### GetInstanceTypes + +`func (o *Quotas) GetInstanceTypes() []string` + +GetInstanceTypes returns the InstanceTypes field if non-nil, zero value otherwise. + +### GetInstanceTypesOk + +`func (o *Quotas) GetInstanceTypesOk() (*[]string, bool)` + +GetInstanceTypesOk returns a tuple with the InstanceTypes field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetInstanceTypes + +`func (o *Quotas) SetInstanceTypes(v []string)` + +SetInstanceTypes sets InstanceTypes field to given value. + +### HasInstanceTypes + +`func (o *Quotas) HasInstanceTypes() bool` + +HasInstanceTypes returns a boolean if a field has been set. + +### GetRegions + +`func (o *Quotas) GetRegions() []string` + +GetRegions returns the Regions field if non-nil, zero value otherwise. + +### GetRegionsOk + +`func (o *Quotas) GetRegionsOk() (*[]string, bool)` + +GetRegionsOk returns a tuple with the Regions field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetRegions + +`func (o *Quotas) SetRegions(v []string)` + +SetRegions sets Regions field to given value. + +### HasRegions + +`func (o *Quotas) HasRegions() bool` + +HasRegions returns a boolean if a field has been set. + +### GetMaxOrganizationMembers + +`func (o *Quotas) GetMaxOrganizationMembers() string` + +GetMaxOrganizationMembers returns the MaxOrganizationMembers field if non-nil, zero value otherwise. + +### GetMaxOrganizationMembersOk + +`func (o *Quotas) GetMaxOrganizationMembersOk() (*string, bool)` + +GetMaxOrganizationMembersOk returns a tuple with the MaxOrganizationMembers field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetMaxOrganizationMembers + +`func (o *Quotas) SetMaxOrganizationMembers(v string)` + +SetMaxOrganizationMembers sets MaxOrganizationMembers field to given value. + +### HasMaxOrganizationMembers + +`func (o *Quotas) HasMaxOrganizationMembers() bool` + +HasMaxOrganizationMembers returns a boolean if a field has been set. + +### GetMaxInstancesByType + +`func (o *Quotas) GetMaxInstancesByType() map[string]string` + +GetMaxInstancesByType returns the MaxInstancesByType field if non-nil, zero value otherwise. + +### GetMaxInstancesByTypeOk + +`func (o *Quotas) GetMaxInstancesByTypeOk() (*map[string]string, bool)` + +GetMaxInstancesByTypeOk returns a tuple with the MaxInstancesByType field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetMaxInstancesByType + +`func (o *Quotas) SetMaxInstancesByType(v map[string]string)` + +SetMaxInstancesByType sets MaxInstancesByType field to given value. + +### HasMaxInstancesByType + +`func (o *Quotas) HasMaxInstancesByType() bool` + +HasMaxInstancesByType returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v1/koyeb/model_get_quotas_reply.go b/api/v1/koyeb/model_get_quotas_reply.go new file mode 100644 index 00000000..745a18cf --- /dev/null +++ b/api/v1/koyeb/model_get_quotas_reply.go @@ -0,0 +1,115 @@ +/* +Koyeb Rest API + +The Koyeb API allows you to interact with the Koyeb platform in a simple, programmatic way using conventional HTTP requests. + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package koyeb + +import ( + "encoding/json" +) + +// GetQuotasReply struct for GetQuotasReply +type GetQuotasReply struct { + Quotas *Quotas `json:"quotas,omitempty"` +} + +// NewGetQuotasReply instantiates a new GetQuotasReply object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewGetQuotasReply() *GetQuotasReply { + this := GetQuotasReply{} + return &this +} + +// NewGetQuotasReplyWithDefaults instantiates a new GetQuotasReply object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewGetQuotasReplyWithDefaults() *GetQuotasReply { + this := GetQuotasReply{} + return &this +} + +// GetQuotas returns the Quotas field value if set, zero value otherwise. +func (o *GetQuotasReply) GetQuotas() Quotas { + if o == nil || isNil(o.Quotas) { + var ret Quotas + return ret + } + return *o.Quotas +} + +// GetQuotasOk returns a tuple with the Quotas field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *GetQuotasReply) GetQuotasOk() (*Quotas, bool) { + if o == nil || isNil(o.Quotas) { + return nil, false + } + return o.Quotas, true +} + +// HasQuotas returns a boolean if a field has been set. +func (o *GetQuotasReply) HasQuotas() bool { + if o != nil && !isNil(o.Quotas) { + return true + } + + return false +} + +// SetQuotas gets a reference to the given Quotas and assigns it to the Quotas field. +func (o *GetQuotasReply) SetQuotas(v Quotas) { + o.Quotas = &v +} + +func (o GetQuotasReply) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if !isNil(o.Quotas) { + toSerialize["quotas"] = o.Quotas + } + return json.Marshal(toSerialize) +} + +type NullableGetQuotasReply struct { + value *GetQuotasReply + isSet bool +} + +func (v NullableGetQuotasReply) Get() *GetQuotasReply { + return v.value +} + +func (v *NullableGetQuotasReply) Set(val *GetQuotasReply) { + v.value = val + v.isSet = true +} + +func (v NullableGetQuotasReply) IsSet() bool { + return v.isSet +} + +func (v *NullableGetQuotasReply) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableGetQuotasReply(val *GetQuotasReply) *NullableGetQuotasReply { + return &NullableGetQuotasReply{value: val, isSet: true} +} + +func (v NullableGetQuotasReply) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableGetQuotasReply) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} + + diff --git a/api/v1/koyeb/model_quotas.go b/api/v1/koyeb/model_quotas.go new file mode 100644 index 00000000..73513131 --- /dev/null +++ b/api/v1/koyeb/model_quotas.go @@ -0,0 +1,439 @@ +/* +Koyeb Rest API + +The Koyeb API allows you to interact with the Koyeb platform in a simple, programmatic way using conventional HTTP requests. + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package koyeb + +import ( + "encoding/json" +) + +// Quotas struct for Quotas +type Quotas struct { + Apps *string `json:"apps,omitempty"` + Services *string `json:"services,omitempty"` + Domains *string `json:"domains,omitempty"` + ServicesByApp *string `json:"services_by_app,omitempty"` + ServiceProvisioningConcurrency *string `json:"service_provisioning_concurrency,omitempty"` + MemoryMb *string `json:"memory_mb,omitempty"` + InstanceTypes []string `json:"instance_types,omitempty"` + Regions []string `json:"regions,omitempty"` + MaxOrganizationMembers *string `json:"max_organization_members,omitempty"` + MaxInstancesByType *map[string]string `json:"max_instances_by_type,omitempty"` +} + +// NewQuotas instantiates a new Quotas object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewQuotas() *Quotas { + this := Quotas{} + return &this +} + +// NewQuotasWithDefaults instantiates a new Quotas object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewQuotasWithDefaults() *Quotas { + this := Quotas{} + return &this +} + +// GetApps returns the Apps field value if set, zero value otherwise. +func (o *Quotas) GetApps() string { + if o == nil || isNil(o.Apps) { + var ret string + return ret + } + return *o.Apps +} + +// GetAppsOk returns a tuple with the Apps field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetAppsOk() (*string, bool) { + if o == nil || isNil(o.Apps) { + return nil, false + } + return o.Apps, true +} + +// HasApps returns a boolean if a field has been set. +func (o *Quotas) HasApps() bool { + if o != nil && !isNil(o.Apps) { + return true + } + + return false +} + +// SetApps gets a reference to the given string and assigns it to the Apps field. +func (o *Quotas) SetApps(v string) { + o.Apps = &v +} + +// GetServices returns the Services field value if set, zero value otherwise. +func (o *Quotas) GetServices() string { + if o == nil || isNil(o.Services) { + var ret string + return ret + } + return *o.Services +} + +// GetServicesOk returns a tuple with the Services field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetServicesOk() (*string, bool) { + if o == nil || isNil(o.Services) { + return nil, false + } + return o.Services, true +} + +// HasServices returns a boolean if a field has been set. +func (o *Quotas) HasServices() bool { + if o != nil && !isNil(o.Services) { + return true + } + + return false +} + +// SetServices gets a reference to the given string and assigns it to the Services field. +func (o *Quotas) SetServices(v string) { + o.Services = &v +} + +// GetDomains returns the Domains field value if set, zero value otherwise. +func (o *Quotas) GetDomains() string { + if o == nil || isNil(o.Domains) { + var ret string + return ret + } + return *o.Domains +} + +// GetDomainsOk returns a tuple with the Domains field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetDomainsOk() (*string, bool) { + if o == nil || isNil(o.Domains) { + return nil, false + } + return o.Domains, true +} + +// HasDomains returns a boolean if a field has been set. +func (o *Quotas) HasDomains() bool { + if o != nil && !isNil(o.Domains) { + return true + } + + return false +} + +// SetDomains gets a reference to the given string and assigns it to the Domains field. +func (o *Quotas) SetDomains(v string) { + o.Domains = &v +} + +// GetServicesByApp returns the ServicesByApp field value if set, zero value otherwise. +func (o *Quotas) GetServicesByApp() string { + if o == nil || isNil(o.ServicesByApp) { + var ret string + return ret + } + return *o.ServicesByApp +} + +// GetServicesByAppOk returns a tuple with the ServicesByApp field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetServicesByAppOk() (*string, bool) { + if o == nil || isNil(o.ServicesByApp) { + return nil, false + } + return o.ServicesByApp, true +} + +// HasServicesByApp returns a boolean if a field has been set. +func (o *Quotas) HasServicesByApp() bool { + if o != nil && !isNil(o.ServicesByApp) { + return true + } + + return false +} + +// SetServicesByApp gets a reference to the given string and assigns it to the ServicesByApp field. +func (o *Quotas) SetServicesByApp(v string) { + o.ServicesByApp = &v +} + +// GetServiceProvisioningConcurrency returns the ServiceProvisioningConcurrency field value if set, zero value otherwise. +func (o *Quotas) GetServiceProvisioningConcurrency() string { + if o == nil || isNil(o.ServiceProvisioningConcurrency) { + var ret string + return ret + } + return *o.ServiceProvisioningConcurrency +} + +// GetServiceProvisioningConcurrencyOk returns a tuple with the ServiceProvisioningConcurrency field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetServiceProvisioningConcurrencyOk() (*string, bool) { + if o == nil || isNil(o.ServiceProvisioningConcurrency) { + return nil, false + } + return o.ServiceProvisioningConcurrency, true +} + +// HasServiceProvisioningConcurrency returns a boolean if a field has been set. +func (o *Quotas) HasServiceProvisioningConcurrency() bool { + if o != nil && !isNil(o.ServiceProvisioningConcurrency) { + return true + } + + return false +} + +// SetServiceProvisioningConcurrency gets a reference to the given string and assigns it to the ServiceProvisioningConcurrency field. +func (o *Quotas) SetServiceProvisioningConcurrency(v string) { + o.ServiceProvisioningConcurrency = &v +} + +// GetMemoryMb returns the MemoryMb field value if set, zero value otherwise. +func (o *Quotas) GetMemoryMb() string { + if o == nil || isNil(o.MemoryMb) { + var ret string + return ret + } + return *o.MemoryMb +} + +// GetMemoryMbOk returns a tuple with the MemoryMb field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetMemoryMbOk() (*string, bool) { + if o == nil || isNil(o.MemoryMb) { + return nil, false + } + return o.MemoryMb, true +} + +// HasMemoryMb returns a boolean if a field has been set. +func (o *Quotas) HasMemoryMb() bool { + if o != nil && !isNil(o.MemoryMb) { + return true + } + + return false +} + +// SetMemoryMb gets a reference to the given string and assigns it to the MemoryMb field. +func (o *Quotas) SetMemoryMb(v string) { + o.MemoryMb = &v +} + +// GetInstanceTypes returns the InstanceTypes field value if set, zero value otherwise. +func (o *Quotas) GetInstanceTypes() []string { + if o == nil || isNil(o.InstanceTypes) { + var ret []string + return ret + } + return o.InstanceTypes +} + +// GetInstanceTypesOk returns a tuple with the InstanceTypes field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetInstanceTypesOk() ([]string, bool) { + if o == nil || isNil(o.InstanceTypes) { + return nil, false + } + return o.InstanceTypes, true +} + +// HasInstanceTypes returns a boolean if a field has been set. +func (o *Quotas) HasInstanceTypes() bool { + if o != nil && !isNil(o.InstanceTypes) { + return true + } + + return false +} + +// SetInstanceTypes gets a reference to the given []string and assigns it to the InstanceTypes field. +func (o *Quotas) SetInstanceTypes(v []string) { + o.InstanceTypes = v +} + +// GetRegions returns the Regions field value if set, zero value otherwise. +func (o *Quotas) GetRegions() []string { + if o == nil || isNil(o.Regions) { + var ret []string + return ret + } + return o.Regions +} + +// GetRegionsOk returns a tuple with the Regions field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetRegionsOk() ([]string, bool) { + if o == nil || isNil(o.Regions) { + return nil, false + } + return o.Regions, true +} + +// HasRegions returns a boolean if a field has been set. +func (o *Quotas) HasRegions() bool { + if o != nil && !isNil(o.Regions) { + return true + } + + return false +} + +// SetRegions gets a reference to the given []string and assigns it to the Regions field. +func (o *Quotas) SetRegions(v []string) { + o.Regions = v +} + +// GetMaxOrganizationMembers returns the MaxOrganizationMembers field value if set, zero value otherwise. +func (o *Quotas) GetMaxOrganizationMembers() string { + if o == nil || isNil(o.MaxOrganizationMembers) { + var ret string + return ret + } + return *o.MaxOrganizationMembers +} + +// GetMaxOrganizationMembersOk returns a tuple with the MaxOrganizationMembers field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetMaxOrganizationMembersOk() (*string, bool) { + if o == nil || isNil(o.MaxOrganizationMembers) { + return nil, false + } + return o.MaxOrganizationMembers, true +} + +// HasMaxOrganizationMembers returns a boolean if a field has been set. +func (o *Quotas) HasMaxOrganizationMembers() bool { + if o != nil && !isNil(o.MaxOrganizationMembers) { + return true + } + + return false +} + +// SetMaxOrganizationMembers gets a reference to the given string and assigns it to the MaxOrganizationMembers field. +func (o *Quotas) SetMaxOrganizationMembers(v string) { + o.MaxOrganizationMembers = &v +} + +// GetMaxInstancesByType returns the MaxInstancesByType field value if set, zero value otherwise. +func (o *Quotas) GetMaxInstancesByType() map[string]string { + if o == nil || isNil(o.MaxInstancesByType) { + var ret map[string]string + return ret + } + return *o.MaxInstancesByType +} + +// GetMaxInstancesByTypeOk returns a tuple with the MaxInstancesByType field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *Quotas) GetMaxInstancesByTypeOk() (*map[string]string, bool) { + if o == nil || isNil(o.MaxInstancesByType) { + return nil, false + } + return o.MaxInstancesByType, true +} + +// HasMaxInstancesByType returns a boolean if a field has been set. +func (o *Quotas) HasMaxInstancesByType() bool { + if o != nil && !isNil(o.MaxInstancesByType) { + return true + } + + return false +} + +// SetMaxInstancesByType gets a reference to the given map[string]string and assigns it to the MaxInstancesByType field. +func (o *Quotas) SetMaxInstancesByType(v map[string]string) { + o.MaxInstancesByType = &v +} + +func (o Quotas) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if !isNil(o.Apps) { + toSerialize["apps"] = o.Apps + } + if !isNil(o.Services) { + toSerialize["services"] = o.Services + } + if !isNil(o.Domains) { + toSerialize["domains"] = o.Domains + } + if !isNil(o.ServicesByApp) { + toSerialize["services_by_app"] = o.ServicesByApp + } + if !isNil(o.ServiceProvisioningConcurrency) { + toSerialize["service_provisioning_concurrency"] = o.ServiceProvisioningConcurrency + } + if !isNil(o.MemoryMb) { + toSerialize["memory_mb"] = o.MemoryMb + } + if !isNil(o.InstanceTypes) { + toSerialize["instance_types"] = o.InstanceTypes + } + if !isNil(o.Regions) { + toSerialize["regions"] = o.Regions + } + if !isNil(o.MaxOrganizationMembers) { + toSerialize["max_organization_members"] = o.MaxOrganizationMembers + } + if !isNil(o.MaxInstancesByType) { + toSerialize["max_instances_by_type"] = o.MaxInstancesByType + } + return json.Marshal(toSerialize) +} + +type NullableQuotas struct { + value *Quotas + isSet bool +} + +func (v NullableQuotas) Get() *Quotas { + return v.value +} + +func (v *NullableQuotas) Set(val *Quotas) { + v.value = val + v.isSet = true +} + +func (v NullableQuotas) IsSet() bool { + return v.isSet +} + +func (v *NullableQuotas) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableQuotas(val *Quotas) *NullableQuotas { + return &NullableQuotas{value: val, isSet: true} +} + +func (v NullableQuotas) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableQuotas) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} + + diff --git a/api/v1/koyeb/openapi.json b/api/v1/koyeb/openapi.json index 40262fdd..148c7020 100644 --- a/api/v1/koyeb/openapi.json +++ b/api/v1/koyeb/openapi.json @@ -76,6 +76,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -88,6 +94,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -130,6 +142,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -142,6 +160,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -192,15 +216,15 @@ ] } }, - "/v1/quotas/capacity": { - "post": { - "summary": "Review Organization Capacity", - "operationId": "ReviewOrganizationCapacity", + "/v1/organization_members": { + "get": { + "summary": "List organization members", + "operationId": "ListOrganizationMembers", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ReviewOrganizationCapacityReply" + "$ref": "#/definitions/ListOrganizationMembersReply" } }, "400": { @@ -242,28 +266,48 @@ }, "parameters": [ { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ReviewOrganizationCapacityRequest" - } + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "organization_id", + "description": "(Optional) Filter for an organization", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "user_id", + "description": "(Optional) Filter for an user", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "Quotas" + "OrganizationMembers" ] } }, - "/v1/instance_events": { - "get": { - "summary": "List Instance events", - "operationId": "ListInstanceEvents", + "/v1/organization_members/{id}": { + "delete": { + "summary": "Remove an organization member", + "operationId": "RemoveOrganizationMember", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListInstanceEventsReply" + "$ref": "#/definitions/RemoveOrganizationMemberReply" } }, "400": { @@ -305,70 +349,25 @@ }, "parameters": [ { - "name": "instance_id", - "description": "(Optional) Filter on instance id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "instance_ids", - "description": "(Optional) Filter on list of instance id", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "types", - "description": "(Optional) Filter on instance event types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "Instances" + "OrganizationMembers" ] } }, - "/v1/instances": { + "/v1/account/activities": { "get": { - "summary": "List Instances", - "operationId": "ListInstances", + "operationId": "GetAccountActivities", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListInstancesReply" + "$ref": "#/definitions/ActivityList" } }, "400": { @@ -409,97 +408,32 @@ } }, "parameters": [ - { - "name": "app_id", - "description": "(Optional) Filter on application id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "service_id", - "description": "(Optional) Filter on service id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "deployment_id", - "description": "(Optional) Filter on deployment id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "regional_deployment_id", - "description": "(Optional) Filter on regional deployment id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "allocation_id", - "description": "(Optional) Filter on allocation id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "statuses", - "description": "(Optional) Filter on instance statuses", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "ALLOCATING", - "STARTING", - "HEALTHY", - "UNHEALTHY", - "STOPPING", - "STOPPED", - "ERROR" - ] - }, - "collectionFormat": "multi" - }, { "name": "limit", - "description": "(Optional) The number of items to return", "in": "query", "required": false, "type": "string" }, { "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", "in": "query", "required": false, "type": "string" } ], "tags": [ - "Instances" + "activity" ] } }, - "/v1/instances/{id}": { - "get": { - "summary": "Get Instance", - "operationId": "GetInstance", + "/v1/account/invite": { + "post": { + "operationId": "CreateInvite", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetInstanceReply" + "$ref": "#/definitions/Empty" } }, "400": { @@ -541,27 +475,28 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the instance", - "in": "path", + "name": "body", + "in": "body", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/InviteUserRequest" + } } ], "tags": [ - "Instances" + "invite" ] } }, - "/v1/service_events": { + "/v1/account/oauth": { "get": { - "summary": "List Service events", - "operationId": "ListServiceEvents", + "summary": "Get OAuth Providers", + "operationId": "GetOAuthOptions", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListServiceEventsReply" + "$ref": "#/definitions/GetOAuthOptionsReply" } }, "400": { @@ -603,59 +538,38 @@ }, "parameters": [ { - "name": "service_id", - "description": "(Optional) Filter on service id", + "name": "action", + "description": "Which authentication flow is being initiated", "in": "query", "required": false, - "type": "string" + "type": "string", + "enum": [ + "signin", + "signup", + "register" + ], + "default": "signin" }, { - "name": "types", - "description": "(Optional) Filter on service event types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", + "name": "metadata", + "description": "A small (limited to 400 characters) string of arbitrary metadata which will be encoded in the state", "in": "query", "required": false, "type": "string" } ], "tags": [ - "Services" + "profile" ] - } - }, - "/v1/services": { - "get": { - "summary": "List Services", - "operationId": "ListServices", + }, + "post": { + "summary": "Authenticate using OAuth", + "operationId": "OAuthCallback", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListServicesReply" + "$ref": "#/definitions/OAuthCallbackReply" } }, "400": { @@ -697,63 +611,34 @@ }, "parameters": [ { - "name": "app_id", - "description": "(Optional) The id of the app", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OAuthCallbackRequest" + } }, { - "name": "name", - "description": "(Optional) A filter for name", - "in": "query", + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", "required": false, "type": "string" - }, - { - "name": "types", - "description": "(Optional) Filter on service types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "INVALID_TYPE", - "WEB", - "WORKER", - "DATABASE" - ] - }, - "collectionFormat": "multi" } ], "tags": [ - "Services" + "profile" ] - }, - "post": { - "summary": "Create Service", - "operationId": "CreateService", + } + }, + "/v1/account/organization": { + "get": { + "operationId": "GetCurrentOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateServiceReply" + "$ref": "#/definitions/GetOrganizationReply" } }, "400": { @@ -793,37 +678,19 @@ } } }, - "parameters": [ - { - "name": "service", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CreateService" - } - }, - { - "name": "dry_run", - "description": "If set only run validation", - "in": "query", - "required": false, - "type": "boolean" - } - ], "tags": [ - "Services" + "profile" ] } }, - "/v1/services/{id}": { + "/v1/account/organization_invitations": { "get": { - "summary": "Get Service", - "operationId": "GetService", + "operationId": "ListUserOrganizationInvitations", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetServiceReply" + "$ref": "#/definitions/ListUserOrganizationInvitationsReply" } }, "400": { @@ -865,26 +732,51 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the Service", - "in": "path", - "required": true, + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, "type": "string" + }, + { + "name": "statuses", + "description": "(Optional) Filter on organization invitation statuses", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "INVALID", + "PENDING", + "ACCEPTED", + "REFUSED", + "EXPIRED" + ] + }, + "collectionFormat": "multi" } ], "tags": [ - "Services" + "profile" ] - }, - "delete": { - "summary": "Delete Service", - "description": "Service deletion is allowed for all status.", - "operationId": "DeleteService", + } + }, + "/v1/account/organization_invitations/{id}": { + "get": { + "operationId": "GetUserOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteServiceReply" + "$ref": "#/definitions/GetUserOrganizationInvitationReply" } }, "400": { @@ -927,24 +819,25 @@ "parameters": [ { "name": "id", - "description": "The id of the entity to delete", + "description": "The id of the organization invitation to get", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Services" + "profile" ] - }, - "put": { - "summary": "Update Service", - "operationId": "UpdateService", + } + }, + "/v1/account/organization_invitations/{id}/accept": { + "post": { + "operationId": "AcceptOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateServiceReply" + "$ref": "#/definitions/AcceptOrganizationInvitationReply" } }, "400": { @@ -987,39 +880,33 @@ "parameters": [ { "name": "id", - "description": "The id of the entity to update", + "description": "The id of the organization invitation to accept", "in": "path", "required": true, "type": "string" }, { - "name": "service", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/UpdateService" + "type": "object" } - }, - { - "name": "dry_run", - "description": "If set, run validation and check that the service exists", - "in": "query", - "required": false, - "type": "boolean" } ], "tags": [ - "Services" + "profile" ] - }, - "patch": { - "summary": "Update Service", - "operationId": "UpdateService2", + } + }, + "/v1/account/organization_invitations/{id}/decline": { + "post": { + "operationId": "DeclineOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateServiceReply" + "$ref": "#/definitions/DeclineOrganizationInvitationReply" } }, "400": { @@ -1062,42 +949,33 @@ "parameters": [ { "name": "id", - "description": "The id of the entity to update", + "description": "The id of the organization invitation to decline", "in": "path", "required": true, "type": "string" }, { - "name": "service", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/UpdateService" + "type": "object" } - }, - { - "name": "dry_run", - "description": "If set, run validation and check that the service exists", - "in": "query", - "required": false, - "type": "boolean" } ], "tags": [ - "Services" + "profile" ] } }, - "/v1/services/{id}/pause": { - "post": { - "summary": "Pause Service", - "description": "Service pause action is allowed for the following status:\n - starting\n - healthy\n - degraded\n - unhealthy\n - resuming", - "operationId": "PauseService", + "/v1/account/profile": { + "get": { + "operationId": "GetCurrentUser", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/PauseServiceReply" + "$ref": "#/definitions/UserReply" } }, "400": { @@ -1137,29 +1015,17 @@ } } }, - "parameters": [ - { - "name": "id", - "description": "The id of the service to pause.", - "in": "path", - "required": true, - "type": "string" - } - ], "tags": [ - "Services" + "profile" ] - } - }, - "/v1/services/{id}/redeploy": { - "post": { - "summary": "ReDeploy Service", - "operationId": "ReDeploy", + }, + "put": { + "operationId": "UpdateUser", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/RedeployReply" + "$ref": "#/definitions/UserReply" } }, "400": { @@ -1201,35 +1067,31 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, - "type": "string" - }, - { - "name": "info", - "in": "body", + "name": "user", + "in": "body", "required": true, "schema": { - "$ref": "#/definitions/RedeployRequest.Info" + "$ref": "#/definitions/UpdateUserRequest.UserUpdateBody" } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "Services" + "profile" ] - } - }, - "/v1/services/{id}/resume": { - "post": { - "summary": "Resume Service", - "description": "Service resume action is allowed for the following status:\n - paused", - "operationId": "ResumeService", + }, + "patch": { + "operationId": "UpdateUser2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ResumeServiceReply" + "$ref": "#/definitions/UserReply" } }, "400": { @@ -1271,27 +1133,33 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the service to pause.", - "in": "path", + "name": "user", + "in": "body", "required": true, + "schema": { + "$ref": "#/definitions/UpdateUserRequest.UserUpdateBody" + } + }, + { + "name": "update_mask", + "in": "query", + "required": false, "type": "string" } ], "tags": [ - "Services" + "profile" ] } }, - "/v1/deployment_events": { - "get": { - "summary": "List Deployment events", - "operationId": "ListDeploymentEvents", + "/v1/account/resend_validation": { + "post": { + "operationId": "ResendEmailValidation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListDeploymentEventsReply" + "$ref": "#/definitions/ResendEmailValidationReply" } }, "400": { @@ -1333,59 +1201,27 @@ }, "parameters": [ { - "name": "deployment_id", - "description": "(Optional) Filter on deployment id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "types", - "description": "(Optional) Filter on deployment event types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", - "in": "query", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResendEmailValidationRequest" + } } ], "tags": [ - "Deployments" + "profile" ] } }, - "/v1/deployments": { - "get": { - "summary": "List Deployments", - "operationId": "ListDeployments", + "/v1/account/reset_password": { + "post": { + "operationId": "ResetPassword", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListDeploymentsReply" + "$ref": "#/definitions/ResetPasswordReply" } }, "400": { @@ -1427,75 +1263,27 @@ }, "parameters": [ { - "name": "app_id", - "description": "(Optional) Filter on application id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "service_id", - "description": "(Optional) Filter on service id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "statuses", - "description": "(Optional) Filter on statuses", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "PENDING", - "PROVISIONING", - "SCHEDULED", - "CANCELING", - "CANCELED", - "ALLOCATING", - "STARTING", - "HEALTHY", - "DEGRADED", - "UNHEALTHY", - "STOPPING", - "STOPPED", - "ERRORING", - "ERROR" - ] - }, - "collectionFormat": "multi" + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResetPasswordRequest" + } } ], "tags": [ - "Deployments" + "profile" ] } }, - "/v1/deployments/{id}": { - "get": { - "summary": "Get Deployment", - "operationId": "GetDeployment", + "/v1/account/signup": { + "post": { + "operationId": "Signup", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetDeploymentReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -1537,28 +1325,35 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the deployment", - "in": "path", + "name": "body", + "description": "Create new account", + "in": "body", "required": true, + "schema": { + "$ref": "#/definitions/CreateAccountRequest" + } + }, + { + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", + "required": false, "type": "string" } ], "tags": [ - "Deployments" + "profile" ] } }, - "/v1/deployments/{id}/cancel": { + "/v1/account/update_password": { "post": { - "summary": "Cancel Deployment", - "description": "Deployment cancellation is allowed for the following status:\n - pending\n - provisioning\n - scheduled", - "operationId": "CancelDeployment", + "operationId": "UpdatePassword", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CancelDeploymentReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -1600,26 +1395,34 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the deployment to cancel.", - "in": "path", + "name": "body", + "in": "body", "required": true, + "schema": { + "$ref": "#/definitions/UpdatePasswordRequest" + } + }, + { + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", + "required": false, "type": "string" } ], "tags": [ - "Deployments" + "profile" ] } }, - "/v1/secrets": { - "get": { - "operationId": "ListSecrets", + "/v1/account/validate/{id}": { + "post": { + "operationId": "Validate", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListSecretsReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -1661,52 +1464,33 @@ }, "parameters": [ { - "name": "name", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" }, { - "name": "limit", - "in": "query", + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", "required": false, "type": "string" - }, - { - "name": "offset", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "types", - "description": "Filter by secret types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "SIMPLE", - "REGISTRY", - "MANAGED" - ] - }, - "collectionFormat": "multi" - } - ], - "tags": [ - "Secrets" - ] - }, - "post": { - "operationId": "CreateSecret", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/CreateSecretReply" - } + } + ], + "tags": [ + "profile" + ] + } + }, + "/v1/billing/manage": { + "get": { + "operationId": "Manage", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ManageReply" + } }, "400": { "description": "Validation error", @@ -1745,29 +1529,21 @@ } } }, - "parameters": [ - { - "name": "secret", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CreateSecret" - } - } - ], "tags": [ - "Secrets" + "billing" ] } }, - "/v1/secrets/{id}": { + "/v1/billing/next_invoice": { "get": { - "operationId": "GetSecret", + "summary": "Experimental: Fetch next invoice", + "description": "WARNING: Please don't use the following method.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK.", + "operationId": "NextInvoice", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetSecretReply" + "$ref": "#/definitions/NextInvoiceReply" } }, "400": { @@ -1807,25 +1583,20 @@ } } }, - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "type": "string" - } - ], "tags": [ - "Secrets" + "billing" ] - }, - "delete": { - "operationId": "DeleteSecret", + } + }, + "/v1/github/installation": { + "get": { + "summary": "Fetch github installation configuration", + "operationId": "GetGithubInstallation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteSecretReply" + "$ref": "#/definitions/GetGithubInstallationReply" } }, "400": { @@ -1865,25 +1636,18 @@ } } }, - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "type": "string" - } - ], "tags": [ - "Secrets" + "organization" ] }, - "put": { - "operationId": "UpdateSecret", + "post": { + "summary": "Start github installation", + "operationId": "GithubInstallation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateSecretReply" + "$ref": "#/definitions/GithubInstallationReply" } }, "400": { @@ -1925,37 +1689,28 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, - "type": "string" - }, - { - "name": "secret", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Secret" + "$ref": "#/definitions/GithubInstallationRequest" } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "Secrets" + "organization" ] - }, - "patch": { - "operationId": "UpdateSecret2", + } + }, + "/v1/github/installation/callback": { + "post": { + "summary": "Github callback for app installation", + "operationId": "GithubInstallationCallback", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateSecretReply" + "$ref": "#/definitions/GithubInstallationCallbackReply" } }, "400": { @@ -1997,39 +1752,28 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, - "type": "string" - }, - { - "name": "secret", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Secret" + "$ref": "#/definitions/GithubInstallationCallbackRequest" } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "Secrets" + "organization" ] } }, - "/v1/secrets/{id}/reveal": { + "/v1/organizations": { "post": { - "operationId": "RevealSecret", + "summary": "Create organization", + "operationId": "CreateOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/RevealSecretReply" + "$ref": "#/definitions/CreateOrganizationReply" } }, "400": { @@ -2070,34 +1814,29 @@ } }, "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "type": "string" - }, { "name": "body", "in": "body", "required": true, "schema": { - "type": "object" + "$ref": "#/definitions/CreateOrganizationRequest" } } ], "tags": [ - "Secrets" + "organization" ] } }, - "/v1/domains": { + "/v1/organizations/{id}": { "get": { - "operationId": "ListDomains", + "summary": "Get organization", + "operationId": "GetOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListDomainsReply" + "$ref": "#/definitions/GetOrganizationReply" } }, "400": { @@ -2139,82 +1878,24 @@ }, "parameters": [ { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "types", - "description": "(Optional) A filter for types\n\n - AUTOASSIGNED: Domain like -.koyeb.app", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "AUTOASSIGNED", - "CUSTOM" - ] - }, - "collectionFormat": "multi" - }, - { - "name": "statuses", - "description": "(Optional) A filter for statuses", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "PENDING", - "ACTIVE", - "ERROR", - "DELETING", - "DELETED" - ] - }, - "collectionFormat": "multi" - }, - { - "name": "app_ids", - "description": "(Optional) A filter for apps", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "name", - "description": "(Optional) A filter for name", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "Domains" + "organization" ] }, - "post": { - "operationId": "CreateDomain", + "delete": { + "summary": "Delete an organization", + "operationId": "DeleteOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateDomainReply" + "$ref": "#/definitions/DeleteOrganizationReply" } }, "400": { @@ -2256,27 +1937,24 @@ }, "parameters": [ { - "name": "domain", - "in": "body", + "name": "id", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/CreateDomain" - } + "type": "string" } ], "tags": [ - "Domains" + "organization" ] - } - }, - "/v1/domains/{id}": { - "get": { - "operationId": "GetDomain", + }, + "put": { + "summary": "Update organization", + "operationId": "UpdateOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetDomainReply" + "$ref": "#/definitions/UpdateOrganizationReply" } }, "400": { @@ -2322,19 +2000,34 @@ "in": "path", "required": true, "type": "string" + }, + { + "name": "organization", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Organization" + } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "Domains" + "organization" ] }, - "delete": { - "operationId": "DeleteDomain", + "patch": { + "summary": "Update organization", + "operationId": "UpdateOrganization2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteDomainReply" + "$ref": "#/definitions/UpdateOrganizationReply" } }, "400": { @@ -2380,19 +2073,36 @@ "in": "path", "required": true, "type": "string" + }, + { + "name": "organization", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Organization" + } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "Domains" + "organization" ] - }, - "patch": { - "operationId": "UpdateDomain", + } + }, + "/v1/organizations/{id}/deactivate": { + "post": { + "summary": "Deactivate an organization", + "operationId": "DeactivateOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateDomainReply" + "$ref": "#/definitions/DeactivateOrganizationReply" } }, "400": { @@ -2440,33 +2150,28 @@ "type": "string" }, { - "name": "domain", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/UpdateDomain" + "type": "object" } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "Domains" + "organization" ] } }, - "/v1/domains/{id}/refresh": { + "/v1/organizations/{id}/plan": { "post": { - "operationId": "RefreshDomainStatus", + "summary": "Update organization plan", + "operationId": "UpdateOrganizationPlan", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/RefreshDomainStatusReply" + "$ref": "#/definitions/UpdateOrganizationPlanReply" } }, "400": { @@ -2512,22 +2217,35 @@ "in": "path", "required": true, "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "plan": { + "$ref": "#/definitions/Plan" + } + } + } } ], "tags": [ - "Domains" + "organization" ] } }, - "/v1/app_events": { - "get": { - "summary": "List App events", - "operationId": "ListAppEvents", + "/v1/organizations/{id}/reactivate": { + "post": { + "summary": "Reactivate an organization", + "operationId": "ReactivateOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListAppEventsReply" + "$ref": "#/definitions/ReactivateOrganizationReply" } }, "400": { @@ -2569,59 +2287,34 @@ }, "parameters": [ { - "name": "app_id", - "description": "(Optional) Filter on app id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "types", - "description": "(Optional) Filter on app event types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" }, { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", - "in": "query", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object" + } } ], "tags": [ - "Apps" + "organization" ] } }, - "/v1/apps": { - "get": { - "summary": "List App", - "operationId": "ListApps", + "/v1/organizations/{id}/signup_qualification": { + "post": { + "summary": "Upsert organization's signup qualification", + "operationId": "UpsertSignupQualification", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListAppsReply" + "$ref": "#/definitions/UpsertSignupQualificationReply" } }, "400": { @@ -2663,39 +2356,39 @@ }, "parameters": [ { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" }, { - "name": "name", - "description": "(Optional) A filter for name", - "in": "query", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "signup_qualification": { + "type": "object" + } + } + } } ], "tags": [ - "Apps" + "organization" ] - }, + } + }, + "/v1/organizations/{id}/switch": { "post": { - "summary": "Create App", - "operationId": "CreateApp", + "summary": "Switch organization context", + "operationId": "SwitchOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateAppReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -2737,28 +2430,40 @@ }, "parameters": [ { - "name": "app", + "name": "id", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/CreateApp" + "type": "object" } + }, + { + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", + "required": false, + "type": "string" } ], "tags": [ - "Apps" + "organization" ] } }, - "/v1/apps/{id}": { - "get": { - "summary": "Get App", - "operationId": "GetApp", + "/v1/sso/canny": { + "post": { + "operationId": "CannyAuth", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetAppReply" + "$ref": "#/definitions/CannyAuthReply" } }, "400": { @@ -2800,26 +2505,27 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the App", - "in": "path", + "name": "body", + "in": "body", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/CannyAuthRequest" + } } ], "tags": [ - "Apps" + "sso" ] - }, - "delete": { - "summary": "Delete App", - "description": "App deletion is allowed for all status.", - "operationId": "DeleteApp", + } + }, + "/v1/sso/discourse": { + "post": { + "operationId": "DiscourseAuth", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteAppReply" + "$ref": "#/definitions/DiscourseAuthReply" } }, "400": { @@ -2861,25 +2567,27 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the App to delete", - "in": "path", + "name": "body", + "in": "body", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/DiscourseAuthRequest" + } } ], "tags": [ - "Apps" + "sso" ] - }, - "put": { - "summary": "Update App", - "operationId": "UpdateApp", + } + }, + "/v1/organization_invitations": { + "get": { + "operationId": "ListOrganizationInvitations", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateAppReply" + "$ref": "#/definitions/ListOrganizationInvitationsReply" } }, "400": { @@ -2921,37 +2629,56 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the app to update.", - "in": "path", - "required": true, + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, "type": "string" }, { - "name": "app.name", + "name": "offset", + "description": "(Optional) The offset in the list of item to return", "in": "query", "required": false, "type": "string" }, { - "name": "update_mask", + "name": "statuses", + "description": "(Optional) Filter on organization invitation statuses", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "INVALID", + "PENDING", + "ACCEPTED", + "REFUSED", + "EXPIRED" + ] + }, + "collectionFormat": "multi" + }, + { + "name": "user_id", + "description": "(Optional) Filter on invitee ID. Will match both invitations sent to\nthat user_id and invitations sent to the email of that user_id.\nThe only valid value is the requester's user_id", "in": "query", "required": false, "type": "string" } ], "tags": [ - "Apps" + "OrganizationInvitations" ] }, - "patch": { - "summary": "Update App", - "operationId": "UpdateApp2", + "post": { + "operationId": "CreateOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateAppReply" + "$ref": "#/definitions/CreateOrganizationInvitationReply" } }, "400": { @@ -2993,42 +2720,27 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the app to update.", - "in": "path", - "required": true, - "type": "string" - }, - { - "name": "app", + "name": "body", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/UpdateApp" + "$ref": "#/definitions/CreateOrganizationInvitationRequest" } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "Apps" + "OrganizationInvitations" ] } }, - "/v1/apps/{id}/pause": { - "post": { - "summary": "Pause App", - "description": "App pause action is allowed for the following status:\n - starting\n - healthy\n - degraded\n - unhealthy\n - resuming", - "operationId": "PauseApp", + "/v1/organization_invitations/{id}": { + "get": { + "operationId": "GetOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/PauseAppReply" + "$ref": "#/definitions/GetOrganizationInvitationReply" } }, "400": { @@ -3071,27 +2783,23 @@ "parameters": [ { "name": "id", - "description": "The id of the app to pause.", + "description": "The id of the invitation to get", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Apps" + "OrganizationInvitations" ] - } - }, - "/v1/apps/{id}/resume": { - "post": { - "summary": "Resume App", - "description": "App resume action is allowed for the following status:\n - paused", - "operationId": "ResumeApp", + }, + "delete": { + "operationId": "DeleteOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ResumeAppReply" + "$ref": "#/definitions/DeleteOrganizationInvitationReply" } }, "400": { @@ -3134,67 +2842,55 @@ "parameters": [ { "name": "id", - "description": "The id of the app to resume.", + "description": "The id of the organization invitation to delete", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Apps" + "OrganizationInvitations" ] } }, - "/v1/usages": { - "get": { - "summary": "Get organization usage", - "operationId": "GetOrganizationUsage", + "/v1/organization_invitations/{id}/resend": { + "post": { + "operationId": "ResendOrganizationInvitation", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetOrganizationUsageReply" + "$ref": "#/definitions/ResendOrganizationInvitationReply" } }, - "default": { - "description": "An unexpected error response.", + "400": { + "description": "Validation error", "schema": { - "$ref": "#/definitions/google.rpc.Status" + "$ref": "#/definitions/ErrorWithFields" } - } - }, - "parameters": [ - { - "name": "starting_time", - "description": "The starting time of the period to get data from", - "in": "query", - "required": false, - "type": "string", - "format": "date-time" }, - { - "name": "ending_time", - "description": "The ending time of the period to get data from", - "in": "query", - "required": false, - "type": "string", - "format": "date-time" - } - ], - "tags": [ - "Usages" - ] - } - }, - "/v1/usages/details": { - "get": { - "summary": "Get organization usage details", - "operationId": "GetOrganizationUsageDetails", - "responses": { - "200": { - "description": "A successful response.", + "401": { + "description": "Returned when the token is not valid.", "schema": { - "$ref": "#/definitions/GetOrganizationUsageDetailsReply" + "$ref": "#/definitions/Error" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" } }, "default": { @@ -3206,64 +2902,35 @@ }, "parameters": [ { - "name": "starting_time", - "description": "The starting time of the period to get data from", - "in": "query", - "required": false, - "type": "string", - "format": "date-time" - }, - { - "name": "ending_time", - "description": "The ending time of the period to get data from", - "in": "query", - "required": false, - "type": "string", - "format": "date-time" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", - "in": "query", - "required": false, + "name": "id", + "description": "The id of the organization invitation to resend", + "in": "path", + "required": true, "type": "string" }, { - "name": "Accept", - "description": "If defined with the value 'text/csv', a csv file is returned", - "in": "header", - "required": false, - "type": "string" + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "object" + } } ], "tags": [ - "Usages" + "OrganizationInvitations" ] } }, - "/v1/regional_deployment_events": { - "get": { - "summary": "List Regional Deployment events", - "operationId": "ListRegionalDeploymentEvents", + "/v1/account/login": { + "post": { + "summary": "Login user", + "operationId": "Login", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListRegionalDeploymentEventsReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -3305,59 +2972,35 @@ }, "parameters": [ { - "name": "regional_deployment_id", - "description": "(Optional) Filter on regional deployment id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "types", - "description": "(Optional) Filter on regional deployment event types", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoginRequest" + } }, { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "order", - "description": "(Optional) Sorts the list in the ascending or the descending order", - "in": "query", + "name": "seon-fp", + "description": "Seon Fingerprint", + "in": "header", "required": false, "type": "string" } ], "tags": [ - "RegionalDeployments" + "Sessions" ] } }, - "/v1/regional_deployments": { - "get": { - "summary": "Experimental: List regional deployments\nUse at your own risk", - "operationId": "ListRegionalDeployments", + "/v1/account/logout": { + "delete": { + "summary": "Logout user", + "operationId": "Logout", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListRegionalDeploymentsReply" + "$ref": "#/definitions/LogoutReply" } }, "400": { @@ -3397,43 +3040,74 @@ } } }, - "parameters": [ - { - "name": "deployment_id", - "description": "(Optional) Filter on deployment id", - "in": "query", - "required": false, - "type": "string" + "tags": [ + "Sessions" + ] + } + }, + "/v1/account/refresh": { + "put": { + "summary": "Refresh token", + "operationId": "RefreshToken", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/LoginReply" + } }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" + "400": { + "description": "Validation error", + "schema": { + "$ref": "#/definitions/ErrorWithFields" + } }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "403": { + "description": "Returned when the user does not have permission to access the resource.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } } - ], + }, "tags": [ - "RegionalDeployments" + "Sessions" ] } }, - "/v1/regional_deployments/{id}": { - "get": { - "summary": "Experimental: Get regional deployment\nUse at your own risk", - "operationId": "GetRegionalDeployment", + "/v1/account/session": { + "post": { + "summary": "New session", + "description": "Creates a new session without an organization for current user.\nNOTE: If you want a session linked to another organization, please use \"Switch organization\".", + "operationId": "NewSession", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetRegionalDeploymentReply" + "$ref": "#/definitions/LoginReply" } }, "400": { @@ -3473,17 +3147,8 @@ } } }, - "parameters": [ - { - "name": "id", - "description": "The id of the regional deployment", - "in": "path", - "required": true, - "type": "string" - } - ], "tags": [ - "RegionalDeployments" + "Sessions" ] } }, @@ -3504,6 +3169,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3516,6 +3187,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3579,6 +3256,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3591,6 +3274,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3630,6 +3319,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3642,6 +3337,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3677,6 +3378,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3689,6 +3396,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3726,6 +3439,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3738,6 +3457,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3766,15 +3491,15 @@ ] } }, - "/v1/organization_members": { + "/v1/credentials": { "get": { - "summary": "List organization members", - "operationId": "ListOrganizationMembers", + "summary": "List credentials", + "operationId": "ListCredentials", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListOrganizationMembersReply" + "$ref": "#/definitions/ListCredentialsReply" } }, "400": { @@ -3783,6 +3508,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3795,6 +3526,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3804,15 +3541,21 @@ }, "parameters": [ { - "name": "limit", - "description": "(Optional) The number of items to return", + "name": "type", + "description": "(Optional) A filter for type", "in": "query", "required": false, - "type": "string" + "type": "string", + "enum": [ + "INVALID", + "USER", + "ORGANIZATION" + ], + "default": "INVALID" }, { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", + "name": "name", + "description": "(Optional) A filter for name", "in": "query", "required": false, "type": "string" @@ -3830,22 +3573,34 @@ "in": "query", "required": false, "type": "string" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "OrganizationMembers" + "Credentials" ] - } - }, - "/v1/organization_members/{id}": { - "delete": { - "summary": "Remove an organization member", - "operationId": "RemoveOrganizationMember", + }, + "post": { + "summary": "Create credential", + "operationId": "CreateCredential", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/RemoveOrganizationMemberReply" + "$ref": "#/definitions/CreateCredentialReply" } }, "400": { @@ -3854,6 +3609,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3866,6 +3627,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3875,25 +3642,28 @@ }, "parameters": [ { - "name": "id", - "in": "path", + "name": "credential", + "in": "body", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/CreateCredential" + } } ], "tags": [ - "OrganizationMembers" + "Credentials" ] } }, - "/v1/organization_invitations": { + "/v1/credentials/{id}": { "get": { - "operationId": "ListOrganizationInvitations", + "summary": "Get credential", + "operationId": "GetCredential", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListOrganizationInvitationsReply" + "$ref": "#/definitions/GetCredentialReply" } }, "400": { @@ -3902,6 +3672,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3914,6 +3690,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -3923,56 +3705,24 @@ }, "parameters": [ { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "statuses", - "description": "(Optional) Filter on organization invitation statuses", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "INVALID", - "PENDING", - "ACCEPTED", - "REFUSED", - "EXPIRED" - ] - }, - "collectionFormat": "multi" - }, - { - "name": "user_id", - "description": "(Optional) Filter on invitee ID. Will match both invitations sent to\nthat user_id and invitations sent to the email of that user_id.\nThe only valid value is the requester's user_id", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "OrganizationInvitations" + "Credentials" ] }, - "post": { - "operationId": "CreateOrganizationInvitation", + "delete": { + "summary": "Delete credential", + "operationId": "DeleteCredential", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateOrganizationInvitationReply" + "$ref": "#/definitions/DeleteCredentialReply" } }, "400": { @@ -3981,6 +3731,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -3993,6 +3749,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4002,27 +3764,24 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/CreateOrganizationInvitationRequest" - } + "type": "string" } ], "tags": [ - "OrganizationInvitations" + "Credentials" ] - } - }, - "/v1/organization_invitations/{id}": { - "get": { - "operationId": "GetOrganizationInvitation", + }, + "put": { + "summary": "Update credential", + "operationId": "UpdateCredential", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetOrganizationInvitationReply" + "$ref": "#/definitions/UpdateCredentialReply" } }, "400": { @@ -4031,6 +3790,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4043,6 +3808,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4053,23 +3824,37 @@ "parameters": [ { "name": "id", - "description": "The id of the invitation to get", "in": "path", "required": true, "type": "string" + }, + { + "name": "credential", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Credential" + } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "OrganizationInvitations" + "Credentials" ] }, - "delete": { - "operationId": "DeleteOrganizationInvitation", + "patch": { + "summary": "Update credential", + "operationId": "UpdateCredential2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteOrganizationInvitationReply" + "$ref": "#/definitions/UpdateCredentialReply" } }, "400": { @@ -4078,6 +3863,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4090,6 +3881,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4100,25 +3897,39 @@ "parameters": [ { "name": "id", - "description": "The id of the organization invitation to delete", "in": "path", "required": true, "type": "string" + }, + { + "name": "credential", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Credential" + } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "OrganizationInvitations" + "Credentials" ] } }, - "/v1/organization_invitations/{id}/resend": { + "/v1/organization_confirmations/{id}": { "post": { - "operationId": "ResendOrganizationInvitation", + "summary": "Confirm organization action", + "operationId": "ConfirmOrganizationAction", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ResendOrganizationInvitationReply" + "$ref": "#/definitions/ConfirmOrganizationActionReply" } }, "400": { @@ -4127,6 +3938,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4139,6 +3956,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4149,34 +3972,24 @@ "parameters": [ { "name": "id", - "description": "The id of the organization invitation to resend", "in": "path", "required": true, "type": "string" - }, - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object" - } } ], "tags": [ - "OrganizationInvitations" + "OrganizationConfirmations" ] } }, - "/v1/subscriptions/{id}": { + "/v1/organizations/{organization_id}/quotas": { "get": { - "summary": "Get Subscription", - "operationId": "GetSubscription", + "operationId": "GetQuotas", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetSubscriptionReply" + "$ref": "#/definitions/GetQuotasReply" } }, "400": { @@ -4185,6 +3998,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4197,6 +4016,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4206,27 +4031,26 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the instance", + "name": "organization_id", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Subscriptions" + "OrganizationQuotas" ] } }, - "/v1/organization_confirmations/{id}": { - "post": { - "summary": "Confirm organization action", - "operationId": "ConfirmOrganizationAction", + "/v1/users/{id}": { + "delete": { + "summary": "Delete user", + "operationId": "DeleteUser", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ConfirmOrganizationActionReply" + "$ref": "#/definitions/DeleteUserReply" } }, "400": { @@ -4235,6 +4059,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4247,6 +4077,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4257,25 +4093,26 @@ "parameters": [ { "name": "id", + "description": "The id of the user", "in": "path", "required": true, "type": "string" } ], "tags": [ - "OrganizationConfirmations" + "Users" ] } }, - "/v1/credentials": { + "/v1/subscriptions/{id}": { "get": { - "summary": "List credentials", - "operationId": "ListCredentials", + "summary": "Get Subscription", + "operationId": "GetSubscription", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListCredentialsReply" + "$ref": "#/definitions/GetSubscriptionReply" } }, "400": { @@ -4284,6 +4121,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4296,6 +4139,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4305,66 +4154,26 @@ }, "parameters": [ { - "name": "type", - "description": "(Optional) A filter for type", - "in": "query", - "required": false, - "type": "string", - "enum": [ - "INVALID", - "USER", - "ORGANIZATION" - ], - "default": "INVALID" - }, - { - "name": "name", - "description": "(Optional) A filter for name", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "organization_id", - "description": "(Optional) Filter for an organization", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "user_id", - "description": "(Optional) Filter for an user", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, + "name": "id", + "description": "The id of the instance", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "Credentials" + "Subscriptions" ] - }, - "post": { - "summary": "Create credential", - "operationId": "CreateCredential", + } + }, + "/v1/git/branches": { + "get": { + "operationId": "ListBranches", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateCredentialReply" + "$ref": "#/definitions/kgitproxy.ListBranchesReply" } }, "400": { @@ -4373,6 +4182,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4385,6 +4200,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4394,28 +4215,47 @@ }, "parameters": [ { - "name": "credential", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CreateCredential" - } + "name": "repository_id", + "description": "(Optional) Filter on one repository.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "name", + "description": "(Optional) Filter on branch name using a fuzzy search.\nRepository filter is required to enable this filter.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return.", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "Credentials" + "Repositories" ] } }, - "/v1/credentials/{id}": { + "/v1/git/repositories": { "get": { - "summary": "Get credential", - "operationId": "GetCredential", + "operationId": "ListRepositories", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetCredentialReply" + "$ref": "#/definitions/kgitproxy.ListRepositoriesReply" } }, "400": { @@ -4424,6 +4264,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4436,6 +4282,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4445,24 +4297,40 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, + "name": "name", + "description": "(Optional) Filter on repository name using a fuzzy search.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return.", + "in": "query", + "required": false, "type": "string" } ], "tags": [ - "Credentials" + "Repositories" ] - }, - "delete": { - "summary": "Delete credential", - "operationId": "DeleteCredential", + } + }, + "/v1/git/sync/organization/{organization_id}": { + "post": { + "operationId": "ResyncOrganization", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteCredentialReply" + "$ref": "#/definitions/kgitproxy.ResyncOrganizationReply" } }, "400": { @@ -4471,6 +4339,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4483,6 +4357,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4492,24 +4372,26 @@ }, "parameters": [ { - "name": "id", + "name": "organization_id", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Credentials" + "Repositories" ] - }, - "put": { - "summary": "Update credential", - "operationId": "UpdateCredential", + } + }, + "/v1/instance_events": { + "get": { + "summary": "List Instance events", + "operationId": "ListInstanceEvents", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateCredentialReply" + "$ref": "#/definitions/ListInstanceEventsReply" } }, "400": { @@ -4518,6 +4400,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4530,6 +4418,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4539,38 +4433,70 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, + "name": "instance_id", + "description": "(Optional) Filter on instance id", + "in": "query", + "required": false, "type": "string" }, { - "name": "credential", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Credential" - } + "name": "instance_ids", + "description": "(Optional) Filter on list of instance id", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" }, { - "name": "update_mask", + "name": "types", + "description": "(Optional) Filter on instance event types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", "in": "query", "required": false, "type": "string" - } - ], - "tags": [ - "Credentials" - ] - }, - "patch": { - "summary": "Update credential", - "operationId": "UpdateCredential2", + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "Instances" + ] + } + }, + "/v1/instances": { + "get": { + "summary": "List Instances", + "operationId": "ListInstances", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateCredentialReply" + "$ref": "#/definitions/ListInstancesReply" } }, "400": { @@ -4579,6 +4505,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4591,6 +4523,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4600,40 +4538,96 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, + "name": "app_id", + "description": "(Optional) Filter on application id", + "in": "query", + "required": false, "type": "string" }, { - "name": "credential", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Credential" - } + "name": "service_id", + "description": "(Optional) Filter on service id", + "in": "query", + "required": false, + "type": "string" }, { - "name": "update_mask", + "name": "deployment_id", + "description": "(Optional) Filter on deployment id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "regional_deployment_id", + "description": "(Optional) Filter on regional deployment id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "allocation_id", + "description": "(Optional) Filter on allocation id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "statuses", + "description": "(Optional) Filter on instance statuses", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "ALLOCATING", + "STARTING", + "HEALTHY", + "UNHEALTHY", + "STOPPING", + "STOPPED", + "ERROR" + ] + }, + "collectionFormat": "multi" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", "in": "query", "required": false, "type": "string" } ], "tags": [ - "Credentials" + "Instances" ] } }, - "/v1/users/{id}": { - "delete": { - "summary": "Delete user", - "operationId": "DeleteUser", + "/v1/instances/{id}": { + "get": { + "summary": "Get Instance", + "operationId": "GetInstance", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteUserReply" + "$ref": "#/definitions/GetInstanceReply" } }, "400": { @@ -4642,6 +4636,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4654,6 +4654,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4664,26 +4670,26 @@ "parameters": [ { "name": "id", - "description": "The id of the user", + "description": "The id of the instance", "in": "path", "required": true, "type": "string" } ], "tags": [ - "Users" + "Instances" ] } }, - "/v1/account/login": { - "post": { - "summary": "Login user", - "operationId": "Login", + "/v1/service_events": { + "get": { + "summary": "List Service events", + "operationId": "ListServiceEvents", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/ListServiceEventsReply" } }, "400": { @@ -4692,6 +4698,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4704,6 +4716,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4713,35 +4731,59 @@ }, "parameters": [ { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/LoginRequest" - } + "name": "service_id", + "description": "(Optional) Filter on service id", + "in": "query", + "required": false, + "type": "string" }, { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", + "name": "types", + "description": "(Optional) Filter on service event types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", + "in": "query", "required": false, "type": "string" } ], "tags": [ - "Sessions" + "Services" ] } }, - "/v1/account/logout": { - "delete": { - "summary": "Logout user", - "operationId": "Logout", + "/v1/services": { + "get": { + "summary": "List Services", + "operationId": "ListServices", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LogoutReply" + "$ref": "#/definitions/ListServicesReply" } }, "400": { @@ -4750,6 +4792,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4762,6 +4810,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4769,62 +4823,65 @@ } } }, - "tags": [ - "Sessions" - ] - } - }, - "/v1/account/refresh": { - "put": { - "summary": "Refresh token", - "operationId": "RefreshToken", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/LoginReply" - } + "parameters": [ + { + "name": "app_id", + "description": "(Optional) The id of the app", + "in": "query", + "required": false, + "type": "string" }, - "400": { - "description": "Validation error", - "schema": { - "$ref": "#/definitions/ErrorWithFields" - } + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" }, - "403": { - "description": "Returned when the user does not have permission to access the resource.", - "schema": { - "$ref": "#/definitions/Error" - } + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" }, - "404": { - "description": "Returned when the resource does not exist.", - "schema": { - "$ref": "#/definitions/Error" - } + { + "name": "name", + "description": "(Optional) A filter for name", + "in": "query", + "required": false, + "type": "string" }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/google.rpc.Status" - } + { + "name": "types", + "description": "(Optional) Filter on service types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "INVALID_TYPE", + "WEB", + "WORKER", + "DATABASE" + ] + }, + "collectionFormat": "multi" } - }, + ], "tags": [ - "Sessions" + "Services" ] - } - }, - "/v1/account/session": { + }, "post": { - "summary": "New session", - "description": "Creates a new session without an organization for current user.\nNOTE: If you want a session linked to another organization, please use \"Switch organization\".", - "operationId": "NewSession", + "summary": "Create Service", + "operationId": "CreateService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/CreateServiceReply" } }, "400": { @@ -4833,6 +4890,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4845,6 +4908,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4852,19 +4921,37 @@ } } }, + "parameters": [ + { + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateService" + } + }, + { + "name": "dry_run", + "description": "If set only run validation", + "in": "query", + "required": false, + "type": "boolean" + } + ], "tags": [ - "Sessions" + "Services" ] } }, - "/v1/account/activities": { + "/v1/services/{id}": { "get": { - "operationId": "GetAccountActivities", + "summary": "Get Service", + "operationId": "GetService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ActivityList" + "$ref": "#/definitions/GetServiceReply" } }, "400": { @@ -4873,6 +4960,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4885,6 +4978,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4894,31 +4993,26 @@ }, "parameters": [ { - "name": "limit", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "in": "query", - "required": false, + "name": "id", + "description": "The id of the Service", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "activity" + "Services" ] - } - }, - "/v1/account/invite": { - "post": { - "operationId": "CreateInvite", + }, + "delete": { + "summary": "Delete Service", + "description": "Service deletion is allowed for all status.", + "operationId": "DeleteService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/Empty" + "$ref": "#/definitions/DeleteServiceReply" } }, "400": { @@ -4927,6 +5021,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4939,6 +5039,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4948,28 +5054,25 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "description": "The id of the entity to delete", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/InviteUserRequest" - } + "type": "string" } ], "tags": [ - "invite" + "Services" ] - } - }, - "/v1/account/oauth": { - "get": { - "summary": "Get OAuth Providers", - "operationId": "GetOAuthOptions", + }, + "put": { + "summary": "Update Service", + "operationId": "UpdateService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetOAuthOptionsReply" + "$ref": "#/definitions/UpdateServiceReply" } }, "400": { @@ -4978,6 +5081,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -4990,6 +5099,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -4999,38 +5114,40 @@ }, "parameters": [ { - "name": "action", - "description": "Which authentication flow is being initiated", - "in": "query", - "required": false, - "type": "string", - "enum": [ - "signin", - "signup", - "register" - ], - "default": "signin" + "name": "id", + "description": "The id of the entity to update", + "in": "path", + "required": true, + "type": "string" }, { - "name": "metadata", - "description": "A small (limited to 400 characters) string of arbitrary metadata which will be encoded in the state", + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateService" + } + }, + { + "name": "dry_run", + "description": "If set, run validation and check that the service exists", "in": "query", "required": false, - "type": "string" + "type": "boolean" } ], "tags": [ - "profile" + "Services" ] }, - "post": { - "summary": "Authenticate using OAuth", - "operationId": "OAuthCallback", + "patch": { + "summary": "Update Service", + "operationId": "UpdateService2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/OAuthCallbackReply" + "$ref": "#/definitions/UpdateServiceReply" } }, "400": { @@ -5039,6 +5156,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5051,6 +5174,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5060,34 +5189,43 @@ }, "parameters": [ { - "name": "body", + "name": "id", + "description": "The id of the entity to update", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "service", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/OAuthCallbackRequest" + "$ref": "#/definitions/UpdateService" } }, { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", + "name": "dry_run", + "description": "If set, run validation and check that the service exists", + "in": "query", "required": false, - "type": "string" + "type": "boolean" } ], "tags": [ - "profile" + "Services" ] } }, - "/v1/account/organization": { - "get": { - "operationId": "GetCurrentOrganization", + "/v1/services/{id}/pause": { + "post": { + "summary": "Pause Service", + "description": "Service pause action is allowed for the following status:\n - starting\n - healthy\n - degraded\n - unhealthy\n - resuming", + "operationId": "PauseService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetOrganizationReply" + "$ref": "#/definitions/PauseServiceReply" } }, "400": { @@ -5096,6 +5234,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5108,6 +5252,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5115,19 +5265,29 @@ } } }, + "parameters": [ + { + "name": "id", + "description": "The id of the service to pause.", + "in": "path", + "required": true, + "type": "string" + } + ], "tags": [ - "profile" + "Services" ] } }, - "/v1/account/organization_invitations": { - "get": { - "operationId": "ListUserOrganizationInvitations", + "/v1/services/{id}/redeploy": { + "post": { + "summary": "ReDeploy Service", + "operationId": "ReDeploy", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListUserOrganizationInvitationsReply" + "$ref": "#/definitions/RedeployReply" } }, "400": { @@ -5136,6 +5296,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5148,6 +5314,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5157,51 +5329,35 @@ }, "parameters": [ { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, + "name": "id", + "in": "path", + "required": true, "type": "string" }, { - "name": "statuses", - "description": "(Optional) Filter on organization invitation statuses", - "in": "query", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "INVALID", - "PENDING", - "ACCEPTED", - "REFUSED", - "EXPIRED" - ] - }, - "collectionFormat": "multi" + "name": "info", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RedeployRequest.Info" + } } ], "tags": [ - "profile" + "Services" ] } }, - "/v1/account/organization_invitations/{id}": { - "get": { - "operationId": "GetUserOrganizationInvitation", + "/v1/services/{id}/resume": { + "post": { + "summary": "Resume Service", + "description": "Service resume action is allowed for the following status:\n - paused", + "operationId": "ResumeService", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetUserOrganizationInvitationReply" + "$ref": "#/definitions/ResumeServiceReply" } }, "400": { @@ -5210,6 +5366,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5222,6 +5384,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5232,43 +5400,67 @@ "parameters": [ { "name": "id", - "description": "The id of the organization invitation to get", + "description": "The id of the service to pause.", "in": "path", "required": true, "type": "string" } ], "tags": [ - "profile" + "Services" ] } }, - "/v1/account/organization_invitations/{id}/accept": { - "post": { - "operationId": "AcceptOrganizationInvitation", + "/v1/usages": { + "get": { + "summary": "Get organization usage", + "operationId": "GetOrganizationUsage", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/AcceptOrganizationInvitationReply" - } - }, - "400": { - "description": "Validation error", - "schema": { - "$ref": "#/definitions/ErrorWithFields" + "$ref": "#/definitions/GetOrganizationUsageReply" } }, - "403": { - "description": "Returned when the user does not have permission to access the resource.", + "default": { + "description": "An unexpected error response.", "schema": { - "$ref": "#/definitions/Error" + "$ref": "#/definitions/google.rpc.Status" } + } + }, + "parameters": [ + { + "name": "starting_time", + "description": "The starting time of the period to get data from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time" }, - "404": { - "description": "Returned when the resource does not exist.", + { + "name": "ending_time", + "description": "The ending time of the period to get data from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time" + } + ], + "tags": [ + "Usages" + ] + } + }, + "/v1/usages/details": { + "get": { + "summary": "Get organization usage details", + "operationId": "GetOrganizationUsageDetails", + "responses": { + "200": { + "description": "A successful response.", "schema": { - "$ref": "#/definitions/Error" + "$ref": "#/definitions/GetOrganizationUsageDetailsReply" } }, "default": { @@ -5280,34 +5472,63 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the organization invitation to accept", - "in": "path", - "required": true, + "name": "starting_time", + "description": "The starting time of the period to get data from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "ending_time", + "description": "The ending time of the period to get data from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, "type": "string" }, { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object" - } + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "Accept", + "description": "If defined with the value 'text/csv', a csv file is returned", + "in": "header", + "required": false, + "type": "string" } ], "tags": [ - "profile" + "Usages" ] } }, - "/v1/account/organization_invitations/{id}/decline": { - "post": { - "operationId": "DeclineOrganizationInvitation", + "/v1/domains": { + "get": { + "operationId": "ListDomains", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeclineOrganizationInvitationReply" + "$ref": "#/definitions/ListDomainsReply" } }, "400": { @@ -5316,6 +5537,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5328,6 +5555,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5337,34 +5570,82 @@ }, "parameters": [ { - "name": "id", - "description": "The id of the organization invitation to decline", - "in": "path", - "required": true, + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, "type": "string" }, { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object" - } + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "types", + "description": "(Optional) A filter for types\n\n - AUTOASSIGNED: Domain like -.koyeb.app", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "AUTOASSIGNED", + "CUSTOM" + ] + }, + "collectionFormat": "multi" + }, + { + "name": "statuses", + "description": "(Optional) A filter for statuses", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "PENDING", + "ACTIVE", + "ERROR", + "DELETING", + "DELETED" + ] + }, + "collectionFormat": "multi" + }, + { + "name": "app_ids", + "description": "(Optional) A filter for apps", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "name", + "description": "(Optional) A filter for name", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "profile" + "Domains" ] - } - }, - "/v1/account/profile": { - "get": { - "operationId": "GetCurrentUser", + }, + "post": { + "operationId": "CreateDomain", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UserReply" + "$ref": "#/definitions/CreateDomainReply" } }, "400": { @@ -5373,6 +5654,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5385,6 +5672,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5392,17 +5685,29 @@ } } }, + "parameters": [ + { + "name": "domain", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateDomain" + } + } + ], "tags": [ - "profile" + "Domains" ] - }, - "put": { - "operationId": "UpdateUser", + } + }, + "/v1/domains/{id}": { + "get": { + "operationId": "GetDomain", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UserReply" + "$ref": "#/definitions/GetDomainReply" } }, "400": { @@ -5411,6 +5716,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5423,6 +5734,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5432,31 +5749,23 @@ }, "parameters": [ { - "name": "user", - "in": "body", + "name": "id", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/UpdateUserRequest.UserUpdateBody" - } - }, - { - "name": "update_mask", - "in": "query", - "required": false, "type": "string" } ], "tags": [ - "profile" + "Domains" ] }, - "patch": { - "operationId": "UpdateUser2", + "delete": { + "operationId": "DeleteDomain", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UserReply" + "$ref": "#/definitions/DeleteDomainReply" } }, "400": { @@ -5465,6 +5774,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5477,6 +5792,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5486,33 +5807,23 @@ }, "parameters": [ { - "name": "user", - "in": "body", + "name": "id", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/UpdateUserRequest.UserUpdateBody" - } - }, - { - "name": "update_mask", - "in": "query", - "required": false, "type": "string" } ], "tags": [ - "profile" + "Domains" ] - } - }, - "/v1/account/resend_validation": { - "post": { - "operationId": "ResendEmailValidation", + }, + "patch": { + "operationId": "UpdateDomain", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ResendEmailValidationReply" + "$ref": "#/definitions/UpdateDomainReply" } }, "400": { @@ -5521,6 +5832,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5533,6 +5850,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5542,27 +5865,39 @@ }, "parameters": [ { - "name": "body", + "name": "id", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "domain", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ResendEmailValidationRequest" + "$ref": "#/definitions/UpdateDomain" } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "profile" + "Domains" ] } }, - "/v1/account/reset_password": { + "/v1/domains/{id}/refresh": { "post": { - "operationId": "ResetPassword", + "operationId": "RefreshDomainStatus", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ResetPasswordReply" + "$ref": "#/definitions/RefreshDomainStatusReply" } }, "400": { @@ -5571,6 +5906,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5583,6 +5924,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5592,27 +5939,26 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ResetPasswordRequest" - } + "type": "string" } ], "tags": [ - "profile" + "Domains" ] } }, - "/v1/account/signup": { - "post": { - "operationId": "Signup", + "/v1/app_events": { + "get": { + "summary": "List App events", + "operationId": "ListAppEvents", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/ListAppEventsReply" } }, "400": { @@ -5621,6 +5967,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5633,6 +5985,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5642,35 +6000,59 @@ }, "parameters": [ { - "name": "body", - "description": "Create new account", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CreateAccountRequest" - } + "name": "app_id", + "description": "(Optional) Filter on app id", + "in": "query", + "required": false, + "type": "string" }, { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", + "name": "types", + "description": "(Optional) Filter on app event types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", + "in": "query", "required": false, "type": "string" } ], "tags": [ - "profile" + "Apps" ] } }, - "/v1/account/update_password": { - "post": { - "operationId": "UpdatePassword", + "/v1/apps": { + "get": { + "summary": "List App", + "operationId": "ListApps", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/ListAppsReply" } }, "400": { @@ -5679,6 +6061,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5691,6 +6079,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5700,34 +6094,39 @@ }, "parameters": [ { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/UpdatePasswordRequest" - } + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" }, { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "name", + "description": "(Optional) A filter for name", + "in": "query", "required": false, "type": "string" } ], "tags": [ - "profile" + "Apps" ] - } - }, - "/v1/account/validate/{id}": { + }, "post": { - "operationId": "Validate", + "summary": "Create App", + "operationId": "CreateApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/CreateAppReply" } }, "400": { @@ -5736,6 +6135,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5748,6 +6153,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5757,32 +6168,28 @@ }, "parameters": [ { - "name": "id", - "in": "path", + "name": "app", + "in": "body", "required": true, - "type": "string" - }, - { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", - "required": false, - "type": "string" + "schema": { + "$ref": "#/definitions/CreateApp" + } } ], "tags": [ - "profile" + "Apps" ] } }, - "/v1/billing/manage": { + "/v1/apps/{id}": { "get": { - "operationId": "Manage", + "summary": "Get App", + "operationId": "GetApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ManageReply" + "$ref": "#/definitions/GetAppReply" } }, "400": { @@ -5791,48 +6198,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, - "403": { - "description": "Returned when the user does not have permission to access the resource.", - "schema": { - "$ref": "#/definitions/Error" - } - }, - "404": { - "description": "Returned when the resource does not exist.", + "401": { + "description": "Returned when the token is not valid.", "schema": { "$ref": "#/definitions/Error" } }, - "default": { - "description": "An unexpected error response.", - "schema": { - "$ref": "#/definitions/google.rpc.Status" - } - } - }, - "tags": [ - "billing" - ] - } - }, - "/v1/billing/next_invoice": { - "get": { - "summary": "Experimental: Fetch next invoice", - "description": "WARNING: Please don't use the following method.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK.", - "operationId": "NextInvoice", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/NextInvoiceReply" - } - }, - "400": { - "description": "Validation error", - "schema": { - "$ref": "#/definitions/ErrorWithFields" - } - }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5845,6 +6216,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5852,20 +6229,28 @@ } } }, + "parameters": [ + { + "name": "id", + "description": "The id of the App", + "in": "path", + "required": true, + "type": "string" + } + ], "tags": [ - "billing" + "Apps" ] - } - }, - "/v1/github/installation": { - "get": { - "summary": "Fetch github installation configuration", - "operationId": "GetGithubInstallation", + }, + "delete": { + "summary": "Delete App", + "description": "App deletion is allowed for all status.", + "operationId": "DeleteApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetGithubInstallationReply" + "$ref": "#/definitions/DeleteAppReply" } }, "400": { @@ -5874,6 +6259,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5886,6 +6277,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5893,18 +6290,27 @@ } } }, + "parameters": [ + { + "name": "id", + "description": "The id of the App to delete", + "in": "path", + "required": true, + "type": "string" + } + ], "tags": [ - "organization" + "Apps" ] }, - "post": { - "summary": "Start github installation", - "operationId": "GithubInstallation", + "put": { + "summary": "Update App", + "operationId": "UpdateApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GithubInstallationReply" + "$ref": "#/definitions/UpdateAppReply" } }, "400": { @@ -5913,6 +6319,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5925,6 +6337,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5934,28 +6352,37 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "description": "The id of the app to update.", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/GithubInstallationRequest" - } + "type": "string" + }, + { + "name": "app.name", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "organization" + "Apps" ] - } - }, - "/v1/github/installation/callback": { - "post": { - "summary": "Github callback for app installation", - "operationId": "GithubInstallationCallback", + }, + "patch": { + "summary": "Update App", + "operationId": "UpdateApp2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GithubInstallationCallbackReply" + "$ref": "#/definitions/UpdateAppReply" } }, "400": { @@ -5964,6 +6391,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -5976,6 +6409,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -5985,28 +6424,42 @@ }, "parameters": [ { - "name": "body", + "name": "id", + "description": "The id of the app to update.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "app", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/GithubInstallationCallbackRequest" + "$ref": "#/definitions/UpdateApp" } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "organization" + "Apps" ] } }, - "/v1/organizations": { + "/v1/apps/{id}/pause": { "post": { - "summary": "Create organization", - "operationId": "CreateOrganization", + "summary": "Pause App", + "description": "App pause action is allowed for the following status:\n - starting\n - healthy\n - degraded\n - unhealthy\n - resuming", + "operationId": "PauseApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CreateOrganizationReply" + "$ref": "#/definitions/PauseAppReply" } }, "400": { @@ -6015,6 +6468,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6027,6 +6486,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6036,28 +6501,28 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "description": "The id of the app to pause.", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/CreateOrganizationRequest" - } + "type": "string" } ], "tags": [ - "organization" + "Apps" ] } }, - "/v1/organizations/{id}": { - "get": { - "summary": "Get organization", - "operationId": "GetOrganization", + "/v1/apps/{id}/resume": { + "post": { + "summary": "Resume App", + "description": "App resume action is allowed for the following status:\n - paused", + "operationId": "ResumeApp", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/GetOrganizationReply" + "$ref": "#/definitions/ResumeAppReply" } }, "400": { @@ -6066,6 +6531,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6078,6 +6549,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6088,23 +6565,25 @@ "parameters": [ { "name": "id", + "description": "The id of the app to resume.", "in": "path", "required": true, "type": "string" } ], "tags": [ - "organization" + "Apps" ] - }, - "delete": { - "summary": "Delete an organization", - "operationId": "DeleteOrganization", + } + }, + "/v1/secrets": { + "get": { + "operationId": "ListSecrets", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeleteOrganizationReply" + "$ref": "#/definitions/ListSecretsReply" } }, "400": { @@ -6113,6 +6592,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6125,6 +6610,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6134,24 +6625,51 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, + "name": "name", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "in": "query", + "required": false, "type": "string" + }, + { + "name": "types", + "description": "Filter by secret types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "SIMPLE", + "REGISTRY", + "MANAGED" + ] + }, + "collectionFormat": "multi" } ], "tags": [ - "organization" + "Secrets" ] }, - "put": { - "summary": "Update organization", - "operationId": "UpdateOrganization", + "post": { + "operationId": "CreateSecret", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateOrganizationReply" + "$ref": "#/definitions/CreateSecretReply" } }, "400": { @@ -6160,6 +6678,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6172,6 +6696,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6181,38 +6711,27 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, - "type": "string" - }, - { - "name": "organization", + "name": "secret", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Organization" + "$ref": "#/definitions/CreateSecret" } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "organization" + "Secrets" ] - }, - "patch": { - "summary": "Update organization", - "operationId": "UpdateOrganization2", + } + }, + "/v1/secrets/{id}": { + "get": { + "operationId": "GetSecret", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateOrganizationReply" + "$ref": "#/definitions/GetSecretReply" } }, "400": { @@ -6221,6 +6740,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6233,6 +6758,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6246,36 +6777,19 @@ "in": "path", "required": true, "type": "string" - }, - { - "name": "organization", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Organization" - } - }, - { - "name": "update_mask", - "in": "query", - "required": false, - "type": "string" } ], "tags": [ - "organization" + "Secrets" ] - } - }, - "/v1/organizations/{id}/deactivate": { - "post": { - "summary": "Deactivate an organization", - "operationId": "DeactivateOrganization", + }, + "delete": { + "operationId": "DeleteSecret", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/DeactivateOrganizationReply" + "$ref": "#/definitions/DeleteSecretReply" } }, "400": { @@ -6284,6 +6798,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6296,6 +6816,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6309,30 +6835,19 @@ "in": "path", "required": true, "type": "string" - }, - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object" - } } ], "tags": [ - "organization" + "Secrets" ] - } - }, - "/v1/organizations/{id}/plan": { - "post": { - "summary": "Update organization plan", - "operationId": "UpdateOrganizationPlan", + }, + "put": { + "operationId": "UpdateSecret", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpdateOrganizationPlanReply" + "$ref": "#/definitions/UpdateSecretReply" } }, "400": { @@ -6341,6 +6856,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6353,6 +6874,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6368,33 +6895,31 @@ "type": "string" }, { - "name": "body", + "name": "secret", "in": "body", "required": true, "schema": { - "type": "object", - "properties": { - "plan": { - "$ref": "#/definitions/Plan" - } - } + "$ref": "#/definitions/Secret" } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "organization" + "Secrets" ] - } - }, - "/v1/organizations/{id}/reactivate": { - "post": { - "summary": "Reactivate an organization", - "operationId": "ReactivateOrganization", + }, + "patch": { + "operationId": "UpdateSecret2", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ReactivateOrganizationReply" + "$ref": "#/definitions/UpdateSecretReply" } }, "400": { @@ -6403,6 +6928,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6415,6 +6946,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6430,28 +6967,33 @@ "type": "string" }, { - "name": "body", + "name": "secret", "in": "body", "required": true, "schema": { - "type": "object" + "$ref": "#/definitions/Secret" } + }, + { + "name": "update_mask", + "in": "query", + "required": false, + "type": "string" } ], "tags": [ - "organization" + "Secrets" ] } }, - "/v1/organizations/{id}/signup_qualification": { + "/v1/secrets/{id}/reveal": { "post": { - "summary": "Upsert organization's signup qualification", - "operationId": "UpsertSignupQualification", + "operationId": "RevealSecret", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/UpsertSignupQualificationReply" + "$ref": "#/definitions/RevealSecretReply" } }, "400": { @@ -6460,6 +7002,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6472,6 +7020,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6491,29 +7045,24 @@ "in": "body", "required": true, "schema": { - "type": "object", - "properties": { - "signup_qualification": { - "type": "object" - } - } + "type": "object" } } ], "tags": [ - "organization" + "Secrets" ] } }, - "/v1/organizations/{id}/switch": { - "post": { - "summary": "Switch organization context", - "operationId": "SwitchOrganization", + "/v1/deployment_events": { + "get": { + "summary": "List Deployment events", + "operationId": "ListDeploymentEvents", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/LoginReply" + "$ref": "#/definitions/ListDeploymentEventsReply" } }, "400": { @@ -6522,6 +7071,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6534,6 +7089,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6543,40 +7104,59 @@ }, "parameters": [ { - "name": "id", - "in": "path", - "required": true, + "name": "deployment_id", + "description": "(Optional) Filter on deployment id", + "in": "query", + "required": false, "type": "string" }, { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object" - } + "name": "types", + "description": "(Optional) Filter on deployment event types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" }, { - "name": "seon-fp", - "description": "Seon Fingerprint", - "in": "header", + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", + "in": "query", "required": false, "type": "string" } ], "tags": [ - "organization" + "Deployments" ] } }, - "/v1/sso/canny": { - "post": { - "operationId": "CannyAuth", + "/v1/deployments": { + "get": { + "summary": "List Deployments", + "operationId": "ListDeployments", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/CannyAuthReply" + "$ref": "#/definitions/ListDeploymentsReply" } }, "400": { @@ -6585,6 +7165,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6597,6 +7183,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6606,35 +7198,89 @@ }, "parameters": [ { - "name": "body", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CannyAuthRequest" - } - } - ], - "tags": [ - "sso" - ] - } - }, - "/v1/sso/discourse": { - "post": { - "operationId": "DiscourseAuth", - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "$ref": "#/definitions/DiscourseAuthReply" - } + "name": "app_id", + "description": "(Optional) Filter on application id", + "in": "query", + "required": false, + "type": "string" }, - "400": { - "description": "Validation error", - "schema": { + { + "name": "service_id", + "description": "(Optional) Filter on service id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "statuses", + "description": "(Optional) Filter on statuses", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "PENDING", + "PROVISIONING", + "SCHEDULED", + "CANCELING", + "CANCELED", + "ALLOCATING", + "STARTING", + "HEALTHY", + "DEGRADED", + "UNHEALTHY", + "STOPPING", + "STOPPED", + "ERRORING", + "ERROR" + ] + }, + "collectionFormat": "multi" + } + ], + "tags": [ + "Deployments" + ] + } + }, + "/v1/deployments/{id}": { + "get": { + "summary": "Get Deployment", + "operationId": "GetDeployment", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/GetDeploymentReply" + } + }, + "400": { + "description": "Validation error", + "schema": { "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6647,6 +7293,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6656,27 +7308,28 @@ }, "parameters": [ { - "name": "body", - "in": "body", + "name": "id", + "description": "The id of the deployment", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/DiscourseAuthRequest" - } + "type": "string" } ], "tags": [ - "sso" + "Deployments" ] } }, - "/v1/git/branches": { - "get": { - "operationId": "ListBranches", + "/v1/deployments/{id}/cancel": { + "post": { + "summary": "Cancel Deployment", + "description": "Deployment cancellation is allowed for the following status:\n - pending\n - provisioning\n - scheduled", + "operationId": "CancelDeployment", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/kgitproxy.ListBranchesReply" + "$ref": "#/definitions/CancelDeploymentReply" } }, "400": { @@ -6685,6 +7338,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6697,6 +7356,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6706,47 +7371,27 @@ }, "parameters": [ { - "name": "repository_id", - "description": "(Optional) Filter on one repository.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "name", - "description": "(Optional) Filter on branch name using a fuzzy search.\nRepository filter is required to enable this filter.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "limit", - "description": "(Optional) The number of items to return.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return.", - "in": "query", - "required": false, + "name": "id", + "description": "The id of the deployment to cancel.", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "Repositories" + "Deployments" ] } }, - "/v1/git/repositories": { + "/v1/regional_deployment_events": { "get": { - "operationId": "ListRepositories", + "summary": "List Regional Deployment events", + "operationId": "ListRegionalDeploymentEvents", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/kgitproxy.ListRepositoriesReply" + "$ref": "#/definitions/ListRegionalDeploymentEventsReply" } }, "400": { @@ -6755,6 +7400,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6767,6 +7418,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6776,40 +7433,59 @@ }, "parameters": [ { - "name": "name", - "description": "(Optional) Filter on repository name using a fuzzy search.", + "name": "regional_deployment_id", + "description": "(Optional) Filter on regional deployment id", "in": "query", "required": false, "type": "string" }, + { + "name": "types", + "description": "(Optional) Filter on regional deployment event types", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, { "name": "limit", - "description": "(Optional) The number of items to return.", + "description": "(Optional) The number of items to return", "in": "query", "required": false, "type": "string" }, { "name": "offset", - "description": "(Optional) The offset in the list of item to return.", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "order", + "description": "(Optional) Sorts the list in the ascending or the descending order", "in": "query", "required": false, "type": "string" } ], "tags": [ - "Repositories" + "RegionalDeployments" ] } }, - "/v1/git/sync/organization/{organization_id}": { - "post": { - "operationId": "ResyncOrganization", + "/v1/regional_deployments": { + "get": { + "summary": "Experimental: List regional deployments\nUse at your own risk", + "operationId": "ListRegionalDeployments", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/kgitproxy.ResyncOrganizationReply" + "$ref": "#/definitions/ListRegionalDeploymentsReply" } }, "400": { @@ -6818,6 +7494,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6830,6 +7512,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6839,26 +7527,41 @@ }, "parameters": [ { - "name": "organization_id", - "in": "path", - "required": true, + "name": "deployment_id", + "description": "(Optional) Filter on deployment id", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, "type": "string" } ], "tags": [ - "Repositories" + "RegionalDeployments" ] } }, - "/v1/search": { + "/v1/regional_deployments/{id}": { "get": { - "summary": "Search", - "operationId": "Search", + "summary": "Experimental: Get regional deployment\nUse at your own risk", + "operationId": "GetRegionalDeployment", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ksearch.SearchReply" + "$ref": "#/definitions/GetRegionalDeploymentReply" } }, "400": { @@ -6867,6 +7570,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -6879,6 +7588,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -6888,73 +7603,57 @@ }, "parameters": [ { - "name": "query", - "description": "(Optional) Search query", - "in": "query", - "required": false, + "name": "id", + "description": "The id of the regional deployment", + "in": "path", + "required": true, "type": "string" } ], "tags": [ - "Search" + "RegionalDeployments" ] } }, - "/v1/catalog/instances": { - "get": { - "summary": "List Instance", - "operationId": "ListCatalogInstances", + "/v1/quotas/capacity": { + "post": { + "summary": "Review Organization Capacity", + "operationId": "ReviewOrganizationCapacity", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListCatalogInstancesReply" + "$ref": "#/definitions/ReviewOrganizationCapacityReply" } }, - "default": { - "description": "An unexpected error response.", + "400": { + "description": "Validation error", "schema": { - "$ref": "#/definitions/google.rpc.Status" + "$ref": "#/definitions/ErrorWithFields" } - } - }, - "parameters": [ - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } }, - { - "name": "id", - "description": "(Optional) A filter for instances", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "CatalogInstances" - ] - } - }, - "/v1/catalog/instances/{id}": { - "get": { - "summary": "Get Instance", - "operationId": "GetCatalogInstance", - "responses": { - "200": { - "description": "A successful response.", + "403": { + "description": "Returned when the user does not have permission to access the resource.", "schema": { - "$ref": "#/definitions/GetCatalogInstanceReply" + "$ref": "#/definitions/Error" + } + }, + "404": { + "description": "Returned when the resource does not exist.", + "schema": { + "$ref": "#/definitions/Error" + } + }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" } }, "default": { @@ -6966,96 +7665,58 @@ }, "parameters": [ { - "name": "id", - "description": "The name of the instance", - "in": "path", + "name": "body", + "in": "body", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/ReviewOrganizationCapacityRequest" + } } ], "tags": [ - "CatalogInstances" + "Quotas" ] } }, - "/v1/catalog/datacenters": { + "/v1/search": { "get": { - "summary": "List datacenters", - "operationId": "ListDatacenters", + "summary": "Search", + "operationId": "Search", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/ListDatacentersReply" + "$ref": "#/definitions/ksearch.SearchReply" } }, - "default": { - "description": "An unexpected error response.", + "400": { + "description": "Validation error", "schema": { - "$ref": "#/definitions/google.rpc.Status" + "$ref": "#/definitions/ErrorWithFields" } - } - }, - "tags": [ - "CatalogDatacenters" - ] - } - }, - "/v1/catalog/regions": { - "get": { - "summary": "List Region", - "operationId": "ListRegions", - "responses": { - "200": { - "description": "A successful response.", + }, + "401": { + "description": "Returned when the token is not valid.", "schema": { - "$ref": "#/definitions/ListRegionsReply" + "$ref": "#/definitions/Error" } }, - "default": { - "description": "An unexpected error response.", + "403": { + "description": "Returned when the user does not have permission to access the resource.", "schema": { - "$ref": "#/definitions/google.rpc.Status" + "$ref": "#/definitions/Error" } - } - }, - "parameters": [ - { - "name": "limit", - "description": "(Optional) The number of items to return", - "in": "query", - "required": false, - "type": "string" }, - { - "name": "offset", - "description": "(Optional) The offset in the list of item to return", - "in": "query", - "required": false, - "type": "string" + "404": { + "description": "Returned when the resource does not exist.", + "schema": { + "$ref": "#/definitions/Error" + } }, - { - "name": "id", - "description": "(Optional) A filter for regions", - "in": "query", - "required": false, - "type": "string" - } - ], - "tags": [ - "CatalogRegions" - ] - } - }, - "/v1/catalog/regions/{id}": { - "get": { - "summary": "Get Region", - "operationId": "GetRegion", - "responses": { - "200": { - "description": "A successful response.", + "500": { + "description": "Returned in case of server error.", "schema": { - "$ref": "#/definitions/GetRegionReply" + "$ref": "#/definitions/Error" } }, "default": { @@ -7067,22 +7728,23 @@ }, "parameters": [ { - "name": "id", - "description": "The name of the region", - "in": "path", - "required": true, + "name": "query", + "description": "(Optional) Search query", + "in": "query", + "required": false, "type": "string" } ], "tags": [ - "CatalogRegions" + "Search" ] } }, - "/v1/streams/logs/tail": { + "/v1/streams/instances/exec": { "get": { - "summary": "Tails logs", - "operationId": "TailLogs", + "summary": "Exec Command", + "description": "This endpoint opens a websocket. Once open, all frames going through the websocket should be formatted in JSON. Input frames should match the format specified below. Output frames will match the response schema.", + "operationId": "ExecCommand", "responses": { "200": { "description": "A successful response.(streaming responses)", @@ -7090,13 +7752,13 @@ "type": "object", "properties": { "result": { - "$ref": "#/definitions/LogEntry" + "$ref": "#/definitions/ExecCommandReply" }, "error": { "$ref": "#/definitions/google.rpc.Status" } }, - "title": "Stream result of LogEntry" + "title": "Stream result of ExecCommandReply" } }, "400": { @@ -7105,6 +7767,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -7117,6 +7785,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -7126,71 +7800,75 @@ }, "parameters": [ { - "name": "type", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "app_id", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "service_id", + "name": "id", + "description": "ID of the resource to exec on.", "in": "query", "required": false, "type": "string" }, { - "name": "deployment_id", + "name": "body.command", + "description": "Command to exec. Mandatory in the first frame sent", "in": "query", "required": false, - "type": "string" + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" }, { - "name": "regional_deployment_id", + "name": "body.tty_size.height", "in": "query", "required": false, - "type": "string" + "type": "integer", + "format": "int32" }, { - "name": "instance_id", + "name": "body.tty_size.width", "in": "query", "required": false, - "type": "string" + "type": "integer", + "format": "int32" }, { - "name": "stream", + "name": "body.stdin.data", + "description": "Data is base64 encoded", "in": "query", "required": false, - "type": "string" + "type": "string", + "format": "byte" }, { - "name": "start", + "name": "body.stdin.close", + "description": "Indicate last data frame", "in": "query", "required": false, - "type": "string" + "type": "boolean" }, { - "name": "limit", + "name": "id_type", + "description": "When specified, it is used to determine if the kind of resource the id refers to. If missing, defaults to the instance id.", "in": "query", "required": false, "type": "string", - "format": "int64" + "enum": [ + "INVALID", + "INSTANCE_ID", + "SERVICE_ID" + ], + "default": "INVALID" } ], "tags": [ - "Logs" + "Instances" ] } }, - "/v1/streams/instances/exec": { + "/v1/streams/logs/tail": { "get": { - "summary": "Exec Command", - "description": "This endpoint opens a websocket. Once open, all frames going through the websocket should be formatted in JSON. Input frames should match the format specified below. Output frames will match the response schema.", - "operationId": "ExecCommand", + "summary": "Tails logs", + "operationId": "TailLogs", "responses": { "200": { "description": "A successful response.(streaming responses)", @@ -7198,13 +7876,13 @@ "type": "object", "properties": { "result": { - "$ref": "#/definitions/ExecCommandReply" + "$ref": "#/definitions/LogEntry" }, "error": { "$ref": "#/definitions/google.rpc.Status" } }, - "title": "Stream result of ExecCommandReply" + "title": "Stream result of LogEntry" } }, "400": { @@ -7213,6 +7891,12 @@ "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -7225,6 +7909,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -7234,68 +7924,63 @@ }, "parameters": [ { - "name": "id", - "description": "ID of the resource to exec on.", + "name": "type", "in": "query", "required": false, "type": "string" }, { - "name": "body.command", - "description": "Command to exec. Mandatory in the first frame sent", + "name": "app_id", "in": "query", "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi" + "type": "string" }, { - "name": "body.tty_size.height", + "name": "service_id", "in": "query", "required": false, - "type": "integer", - "format": "int32" + "type": "string" }, { - "name": "body.tty_size.width", + "name": "deployment_id", "in": "query", "required": false, - "type": "integer", - "format": "int32" + "type": "string" }, { - "name": "body.stdin.data", - "description": "Data is base64 encoded", + "name": "regional_deployment_id", "in": "query", "required": false, - "type": "string", - "format": "byte" + "type": "string" }, { - "name": "body.stdin.close", - "description": "Indicate last data frame", + "name": "instance_id", "in": "query", "required": false, - "type": "boolean" + "type": "string" }, { - "name": "id_type", - "description": "When specified, it is used to determine if the kind of resource the id refers to. If missing, defaults to the instance id.", + "name": "stream", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "start", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "limit", "in": "query", "required": false, "type": "string", - "enum": [ - "INVALID", - "INSTANCE_ID", - "SERVICE_ID" - ], - "default": "INVALID" + "format": "int64" } ], "tags": [ - "Instances" + "Logs" ] } }, @@ -7310,11 +7995,17 @@ } }, "400": { - "description": "Validation error.", + "description": "Validation error", "schema": { "$ref": "#/definitions/ErrorWithFields" } }, + "401": { + "description": "Returned when the token is not valid.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "403": { "description": "Returned when the user does not have permission to access the resource.", "schema": { @@ -7327,6 +8018,12 @@ "$ref": "#/definitions/Error" } }, + "500": { + "description": "Returned in case of server error.", + "schema": { + "$ref": "#/definitions/Error" + } + }, "default": { "description": "An unexpected error response.", "schema": { @@ -7397,83 +8094,262 @@ "Metrics" ] } - } - }, - "definitions": { - "GetMetricsReply.Metric": { - "type": "object", - "properties": { - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" + }, + "/v1/catalog/instances": { + "get": { + "summary": "List Instance", + "operationId": "ListCatalogInstances", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ListCatalogInstancesReply" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } } }, - "values": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": [ - "string", - "number" - ] - } + "parameters": [ + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "id", + "description": "(Optional) A filter for instances", + "in": "query", + "required": false, + "type": "string" } - } + ], + "tags": [ + "CatalogInstances" + ] } }, - "google.protobuf.Any": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "google.protobuf.NullValue": { - "type": "string", - "enum": [ - "NULL_VALUE" - ], - "default": "NULL_VALUE", - "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." - }, - "google.rpc.Status": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" + "/v1/catalog/instances/{id}": { + "get": { + "summary": "Get Instance", + "operationId": "GetCatalogInstance", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/GetCatalogInstanceReply" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } + } }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/google.protobuf.Any" + "parameters": [ + { + "name": "id", + "description": "The name of the instance", + "in": "path", + "required": true, + "type": "string" } - } + ], + "tags": [ + "CatalogInstances" + ] } }, - "Activity": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "actor": { - "$ref": "#/definitions/Object" - }, - "object": { - "$ref": "#/definitions/Object" - }, - "verb": { - "type": "string" + "/v1/catalog/regions": { + "get": { + "summary": "List Region", + "operationId": "ListRegions", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ListRegionsReply" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } + } }, - "metadata": { + "parameters": [ + { + "name": "limit", + "description": "(Optional) The number of items to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "offset", + "description": "(Optional) The offset in the list of item to return", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "id", + "description": "(Optional) A filter for regions", + "in": "query", + "required": false, + "type": "string" + } + ], + "tags": [ + "CatalogRegions" + ] + } + }, + "/v1/catalog/regions/{id}": { + "get": { + "summary": "Get Region", + "operationId": "GetRegion", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/GetRegionReply" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } + } + }, + "parameters": [ + { + "name": "id", + "description": "The name of the region", + "in": "path", + "required": true, + "type": "string" + } + ], + "tags": [ + "CatalogRegions" + ] + } + }, + "/v1/catalog/datacenters": { + "get": { + "summary": "List datacenters", + "operationId": "ListDatacenters", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/ListDatacentersReply" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/google.rpc.Status" + } + } + }, + "tags": [ + "CatalogDatacenters" + ] + } + } + }, + "definitions": { + "GetMetricsReply.Metric": { + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "values": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": [ + "string", + "number" + ] + } + } + } + } + }, + "google.protobuf.Any": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "google.protobuf.NullValue": { + "type": "string", + "enum": [ + "NULL_VALUE" + ], + "default": "NULL_VALUE", + "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." + }, + "google.rpc.Status": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/google.protobuf.Any" + } + } + } + }, + "Activity": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "actor": { + "$ref": "#/definitions/Object" + }, + "object": { + "$ref": "#/definitions/Object" + }, + "verb": { + "type": "string" + }, + "metadata": { "type": "object" }, "created_at": { @@ -7630,1144 +8506,1302 @@ } } }, - "ReviewOrganizationCapacityReply": { - "type": "object", - "properties": { - "has_capacity": { - "type": "boolean" - } - } - }, - "ReviewOrganizationCapacityRequest": { + "ListOrganizationMembersReply": { "type": "object", "properties": { - "plan": { - "type": "string" + "members": { + "type": "array", + "items": { + "$ref": "#/definitions/OrganizationMember" + }, + "title": "The collection of organization members" + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" + }, + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" + }, + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" } } }, - "GetInstanceReply": { - "type": "object", - "properties": { - "instance": { - "$ref": "#/definitions/Instance" - } - } + "Organization.Status": { + "type": "string", + "enum": [ + "WARNING", + "LOCKED", + "ACTIVE", + "DEACTIVATING", + "DEACTIVATED", + "DELETING", + "DELETED" + ], + "default": "WARNING" }, - "Instance": { + "OrganizationMember": { "type": "object", "properties": { "id": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, "organization_id": { "type": "string" }, - "app_id": { - "type": "string" - }, - "service_id": { - "type": "string" - }, - "regional_deployment_id": { - "type": "string" - }, - "allocation_id": { - "type": "string" - }, - "region": { + "user_id": { "type": "string" }, - "datacenter": { - "type": "string" + "joined_at": { + "type": "string", + "format": "date-time" }, - "hypervisor": { - "type": "string" + "role": { + "$ref": "#/definitions/UserRole.Role" }, "status": { - "$ref": "#/definitions/Instance.Status" + "$ref": "#/definitions/OrganizationMember.Status" }, - "messages": { - "type": "array", - "items": { - "type": "string" - } + "user": { + "$ref": "#/definitions/PublicUser" }, - "started_at": { - "type": "string", - "format": "date-time" - }, - "terminated_at": { - "type": "string", - "format": "date-time" - }, - "xyz_deployment_id": { - "type": "string", - "description": "WARNING: Please don't use the following attribute.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK." + "organization": { + "$ref": "#/definitions/PublicOrganization" } } }, - "Instance.Status": { + "OrganizationMember.Status": { "type": "string", "enum": [ - "ALLOCATING", - "STARTING", - "HEALTHY", - "UNHEALTHY", - "STOPPING", - "STOPPED", - "ERROR" + "INVALID", + "ACTIVE", + "DELETED" ], - "default": "ALLOCATING" + "default": "INVALID" }, - "InstanceEvent": { + "Plan": { + "type": "string", + "enum": [ + "hobby", + "starter", + "startup", + "business", + "enterprise", + "internal", + "hobby23", + "no_plan" + ], + "default": "hobby" + }, + "PublicOrganization": { "type": "object", "properties": { "id": { "type": "string" }, - "when": { - "type": "string", - "format": "date-time" - }, - "organization_id": { - "type": "string" - }, - "instance_id": { - "type": "string" - }, - "type": { + "name": { "type": "string" }, - "message": { - "type": "string" + "plan": { + "$ref": "#/definitions/Plan" }, - "metadata": { - "type": "object" + "status": { + "$ref": "#/definitions/Organization.Status" } } }, - "InstanceListItem": { + "PublicUser": { "type": "object", "properties": { "id": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "organization_id": { - "type": "string" - }, - "app_id": { - "type": "string" - }, - "service_id": { + "email": { "type": "string" }, - "regional_deployment_id": { + "name": { "type": "string" }, - "allocation_id": { + "avatar_url": { "type": "string" }, - "region": { + "github_id": { "type": "string" }, - "datacenter": { + "github_user": { "type": "string" - }, - "status": { - "$ref": "#/definitions/Instance.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" - } - }, - "xyz_deployment_id": { - "type": "string", - "description": "WARNING: Please don't use the following attribute.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK." } } }, - "ListInstanceEventsReply": { + "RemoveOrganizationMemberReply": { "type": "object", "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/InstanceEvent" - }, - "title": "The collection of events" - }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" - }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" - }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - }, - "order": { - "type": "string", - "title": "The order in the request" + "member": { + "$ref": "#/definitions/OrganizationMember" } } }, - "ListInstancesReply": { + "UserRole.Role": { + "type": "string", + "enum": [ + "INVALID", + "OWNER" + ], + "default": "INVALID" + }, + "AcceptOrganizationInvitationReply": { "type": "object", "properties": { - "instances": { - "type": "array", - "items": { - "$ref": "#/definitions/InstanceListItem" - }, - "title": "The collection of instances" - }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" - }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" - }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - }, - "order": { - "type": "string", - "title": "The order in the request" + "invitation": { + "$ref": "#/definitions/OrganizationInvitation", + "title": "The organization invitation accepted" } } }, - "AutoRelease": { + "Action": { + "type": "string", + "enum": [ + "signin", + "signup", + "register" + ], + "default": "signin" + }, + "CannyAuthReply": { "type": "object", "properties": { - "groups": { - "type": "array", - "items": { - "$ref": "#/definitions/AutoRelease.Group" - } + "token": { + "type": "string" } } }, - "AutoRelease.Group": { + "CannyAuthRequest": { + "type": "object" + }, + "CreateAccountRequest": { "type": "object", + "example": { + "email": "john@snow.com", + "password": "..." + }, "properties": { - "name": { + "email": { "type": "string" }, - "repository": { + "password": { "type": "string" }, - "git_ref": { - "type": "string", - "title": "A git ref to track (.e.g: refs/tags/ or refs/heads/" + "name": { + "type": "string" }, - "latest_sha": { - "type": "string", - "title": "The last hash that was resolved (used to avoid triggering releases when things haven't changed)" + "captcha": { + "type": "string" } }, - "title": "Configuration extracted from the latest deployment in this deployment_group" + "description": "Create new account", + "title": "Create new account", + "required": [ + "email", + "password" + ] }, - "BuildpackBuilder": { + "CreateOrganizationReply": { "type": "object", "properties": { - "build_command": { - "type": "string", - "title": "A command used to override the build command, run after all build steps" - }, - "run_command": { - "type": "string", - "title": "A command used to override the default run command" - }, - "privileged": { - "type": "boolean", - "title": "A flag to run the container in privileged mode" + "organization": { + "$ref": "#/definitions/Organization" } } }, - "CreateService": { + "CreateOrganizationRequest": { "type": "object", "properties": { - "app_id": { + "name": { "type": "string" - }, - "definition": { - "$ref": "#/definitions/DeploymentDefinition" } } }, - "CreateServiceReply": { + "DeactivateOrganizationReply": { "type": "object", "properties": { - "service": { - "$ref": "#/definitions/Service", - "title": "The entity created" + "organization": { + "$ref": "#/definitions/Organization" } } }, - "DatabaseDeploymentMetadata": { + "DeclineOrganizationInvitationReply": { "type": "object", "properties": { - "neon_postgres": { - "$ref": "#/definitions/NeonPostgresDatabaseDeploymentMetadata" + "invitation": { + "$ref": "#/definitions/OrganizationInvitation", + "title": "The organization invitation declined" } } }, - "DatabaseSource": { + "DeleteOrganizationReply": { "type": "object", "properties": { - "neon_postgres": { - "$ref": "#/definitions/NeonPostgresDatabase" + "organization": { + "$ref": "#/definitions/Organization" } } }, - "DeleteServiceReply": { - "type": "object" - }, - "Deployment": { + "DiscourseAuthReply": { "type": "object", "properties": { - "id": { + "sso": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "allocated_at": { - "type": "string", - "format": "date-time" - }, - "started_at": { - "type": "string", - "format": "date-time" - }, - "succeeded_at": { - "type": "string", - "format": "date-time" - }, - "terminated_at": { - "type": "string", - "format": "date-time" - }, - "organization_id": { + "sig": { "type": "string" - }, - "app_id": { + } + } + }, + "DiscourseAuthRequest": { + "type": "object", + "properties": { + "payload": { "type": "string" }, - "service_id": { + "sig": { + "type": "string" + } + } + }, + "GetGithubInstallationReply": { + "type": "object", + "properties": { + "installation_id": { "type": "string" }, - "parent_id": { + "installation_url": { "type": "string" }, - "child_id": { + "avatar_url": { "type": "string" }, "status": { - "$ref": "#/definitions/Deployment.Status" - }, - "metadata": { - "$ref": "#/definitions/DeploymentMetadata" - }, - "definition": { - "$ref": "#/definitions/DeploymentDefinition" + "$ref": "#/definitions/kgitproxy.GithubInstallation.Status" }, - "messages": { - "type": "array", - "items": { - "type": "string" - } + "installed_at": { + "type": "string", + "format": "date-time" }, - "provisioning_info": { - "$ref": "#/definitions/DeploymentProvisioningInfo" + "suspended_at": { + "type": "string", + "format": "date-time" }, - "database_info": { - "$ref": "#/definitions/DeploymentDatabaseInfo" + "indexing_status": { + "$ref": "#/definitions/kgitproxy.IndexingStatus" }, - "version": { - "type": "string", - "format": "uint64" + "indexed_repositories": { + "type": "integer", + "format": "int64" }, - "deployment_group": { - "type": "string" + "total_repositories": { + "type": "integer", + "format": "int64" } } }, - "Deployment.Status": { - "type": "string", - "enum": [ - "PENDING", - "PROVISIONING", - "SCHEDULED", - "CANCELING", - "CANCELED", - "ALLOCATING", - "STARTING", - "HEALTHY", - "DEGRADED", - "UNHEALTHY", - "STOPPING", - "STOPPED", - "ERRORING", - "ERROR" - ], - "default": "PENDING" + "GetOAuthOptionsReply": { + "type": "object", + "properties": { + "oauth_providers": { + "type": "array", + "items": { + "$ref": "#/definitions/OAuthProvider" + } + } + }, + "description": "A list of providers which you can use for single sign-on." }, - "DeploymentDatabaseInfo": { + "GetOrganizationReply": { "type": "object", "properties": { - "neon_postgres": { - "$ref": "#/definitions/DeploymentNeonPostgresDatabaseInfo" + "organization": { + "$ref": "#/definitions/Organization" } } }, - "DeploymentDefinition": { + "GetUserOrganizationInvitationReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/DeploymentDefinition.Type" - }, - "routes": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentRoute" - } - }, - "ports": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentPort" - } - }, - "env": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentEnv" - } - }, - "regions": { - "type": "array", - "items": { - "type": "string" - } - }, - "scalings": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentScaling" - } - }, - "instance_types": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentInstanceType" - } - }, - "health_checks": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentHealthCheck" - } - }, - "skip_cache": { - "type": "boolean" - }, - "docker": { - "$ref": "#/definitions/DockerSource" - }, - "git": { - "$ref": "#/definitions/GitSource" - }, - "database": { - "$ref": "#/definitions/DatabaseSource" + "invitation": { + "$ref": "#/definitions/OrganizationInvitation" } } }, - "DeploymentDefinition.Type": { - "type": "string", - "enum": [ - "INVALID", - "WEB", - "WORKER", - "DATABASE" - ], - "default": "INVALID" + "GithubInstallationCallbackReply": { + "type": "object" }, - "DeploymentEnv": { + "GithubInstallationCallbackRequest": { "type": "object", "properties": { - "scopes": { - "type": "array", - "items": { - "type": "string" - } - }, - "key": { + "installation_id": { "type": "string" }, - "value": { + "setup_action": { "type": "string" }, - "secret": { + "state": { "type": "string" } } }, - "DeploymentHealthCheck": { + "GithubInstallationReply": { "type": "object", "properties": { - "grace_period": { - "type": "integer", - "format": "int64", - "title": "An optional initial period in seconds to wait for the instance to become healthy, default is 5s" - }, - "interval": { - "type": "integer", - "format": "int64", - "title": "An optional period in seconds between two health checks, default is 60s" - }, - "restart_limit": { - "type": "integer", - "format": "int64", - "title": "An optional number of consecutive failures before attempting to restart the service, default is 3" + "app_name": { + "type": "string", + "title": "The github app name" }, - "timeout": { - "type": "integer", + "app_id": { + "type": "string", "format": "int64", - "title": "An optional maximum time to wait in seconds before considering the check as a failure, default is 5s" + "title": "The github app id" }, - "tcp": { - "$ref": "#/definitions/TCPHealthCheck" + "url": { + "type": "string", + "title": "The url to start the installation flow" }, - "http": { - "$ref": "#/definitions/HTTPHealthCheck" + "state": { + "type": "string", + "title": "The state required by the protocol, it is only valid 10 minutes and encodes information about the type of flow" } } }, - "DeploymentInstanceType": { + "GithubInstallationRequest": { "type": "object", "properties": { - "scopes": { - "type": "array", - "items": { - "type": "string" - } + "metadata": { + "type": "string", + "title": "A small (limited to 400 characters) string of arbitrary metadata which will be encoded in the state" + } + } + }, + "InviteUserRequest": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "ListUserOrganizationInvitationsReply": { + "type": "object", + "properties": { + "invitations": { + "type": "array", + "items": { + "$ref": "#/definitions/OrganizationInvitation" + }, + "title": "The collection of organization invitations" + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" + }, + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" + }, + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" + } + } + }, + "LoginReply": { + "type": "object", + "properties": { + "token": { + "$ref": "#/definitions/Token" + } + } + }, + "ManageReply": { + "type": "object", + "properties": { + "url": { + "type": "string" + } + } + }, + "NextInvoiceReply": { + "type": "object", + "properties": { + "stripe_invoice": { + "type": "object" + } + } + }, + "OAuthCallbackReply": { + "type": "object", + "properties": { + "token": { + "$ref": "#/definitions/Token", + "title": "A jwt token to be used for session" + } + } + }, + "OAuthCallbackRequest": { + "type": "object", + "properties": { + "state": { + "type": "string", + "title": "The state created at the origin of the OAuth flow" + }, + "code": { + "type": "string", + "title": "The code returned by the OAuth provider" + } + } + }, + "OAuthProvider": { + "type": "object", + "properties": { + "id": { + "type": "string", + "title": "The name of the provider (.e.g github, google)" + }, + "url": { + "type": "string", + "title": "The URL to call to initiate the OAuth flow" + }, + "state": { + "type": "string", + "title": "The OAuth state required by the protocol, it is only valid 10 minutes and encodes information about the type of flow" + } + } + }, + "Organization": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "address1": { + "type": "string" + }, + "address2": { + "type": "string" + }, + "city": { + "type": "string" + }, + "postal_code": { + "type": "string" + }, + "state": { + "type": "string" + }, + "country": { + "type": "string" + }, + "company": { + "type": "boolean" + }, + "vat_number": { + "type": "string" + }, + "billing_name": { + "type": "string" + }, + "billing_email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "plan": { + "$ref": "#/definitions/Plan" + }, + "plan_updated_at": { + "type": "string", + "format": "date-time" + }, + "has_payment_method": { + "type": "boolean" + }, + "subscription_id": { + "type": "string" + }, + "current_subscription_id": { + "type": "string" + }, + "latest_subscription_id": { + "type": "string" + }, + "signup_qualification": { + "type": "object" + }, + "status": { + "$ref": "#/definitions/Organization.Status" + }, + "status_message": { + "$ref": "#/definitions/OrganizationDetailedStatus" + }, + "deactivation_reason": { + "$ref": "#/definitions/Organization.DeactivationReason" + }, + "verified": { + "type": "boolean" + }, + "qualifies_for_hobby23": { + "type": "boolean" + } + }, + "title": "Represent an Organization" + }, + "Organization.DeactivationReason": { + "type": "string", + "enum": [ + "INVALID", + "REQUESTED_BY_OWNER", + "SUBSCRIPTION_TERMINATION", + "LOCKED_BY_ADMIN" + ], + "default": "INVALID" + }, + "OrganizationDetailedStatus": { + "type": "string", + "enum": [ + "NEW", + "EMAIL_NOT_VALIDATED", + "BILLING_INFO_MISSING", + "LOCKED", + "PAYMENT_FAILURE", + "VALID", + "PENDING_VERIFICATION", + "VERIFICATION_FAILED", + "REVIEWING_ACCOUNT", + "PLAN_UPGRADE_REQUIRED" + ], + "default": "NEW" + }, + "OrganizationInvitation": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "email": { + "type": "string" + }, + "role": { + "$ref": "#/definitions/UserRole.Role" + }, + "status": { + "$ref": "#/definitions/OrganizationInvitation.Status" + }, + "expires_at": { + "type": "string", + "format": "date-time" + }, + "organization_id": { + "type": "string" + }, + "organization": { + "$ref": "#/definitions/PublicOrganization" + }, + "invitee_id": { + "type": "string" + }, + "invitee": { + "$ref": "#/definitions/PublicUser" + }, + "inviter_id": { + "type": "string" + }, + "inviter": { + "$ref": "#/definitions/PublicUser" + } + } + }, + "OrganizationInvitation.Status": { + "type": "string", + "enum": [ + "INVALID", + "PENDING", + "ACCEPTED", + "REFUSED", + "EXPIRED" + ], + "default": "INVALID" + }, + "ReactivateOrganizationReply": { + "type": "object", + "properties": { + "organization": { + "$ref": "#/definitions/Organization" + } + } + }, + "ResendEmailValidationReply": { + "type": "object" + }, + "ResendEmailValidationRequest": { + "type": "object" + }, + "ResetPasswordReply": { + "type": "object" + }, + "ResetPasswordRequest": { + "type": "object", + "example": { + "email": "john@snow.com" + }, + "properties": { + "email": { + "type": "string" + } + } + }, + "Token": { + "type": "object", + "example": { + "id": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", + "expires": "2022-09-08T14:00:00Z", + "user_id": "996d7822-6b58-11e9-956f-32001b70f000", + "organization_id": "9f33b2c6-6b58-11e9-883c-32001b70f000" + }, + "properties": { + "id": { + "type": "string" + }, + "user_id": { + "type": "string" + }, + "organization_id": { + "type": "string" + }, + "expires_at": { + "type": "string", + "format": "date-time" + } + } + }, + "UpdateOrganizationPlanReply": { + "type": "object", + "properties": { + "organization": { + "$ref": "#/definitions/Organization" + } + } + }, + "UpdateOrganizationReply": { + "type": "object", + "properties": { + "organization": { + "$ref": "#/definitions/Organization" + } + } + }, + "UpdatePasswordRequest": { + "type": "object", + "example": { + "id": "...", + "password": "..." + }, + "properties": { + "id": { + "type": "string" + }, + "password": { + "type": "string" + } + } + }, + "UpdateUserRequest.UserUpdateBody": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "email": { + "type": "string" + }, + "current_password": { + "type": "string" + }, + "password": { + "type": "string" + }, + "newsletter_subscribed": { + "type": "boolean" }, - "type": { + "name": { "type": "string" } } }, - "DeploymentMetadata": { + "UpsertSignupQualificationReply": { "type": "object", "properties": { - "trigger": { - "$ref": "#/definitions/TriggerDeploymentMetadata" - }, - "database": { - "$ref": "#/definitions/DatabaseDeploymentMetadata" + "organization": { + "$ref": "#/definitions/Organization" } } }, - "DeploymentNeonPostgresDatabaseInfo": { + "User": { "type": "object", + "example": { + "id": "78352123-a06f-4ec2-81ed-27a056725385", + "email": "john@snow.com", + "name": "John Snow", + "avatar_url": "https://www.gravatar.com/avatar/00000000000000000000000000000000", + "is_admin": false, + "is_test": true, + "two_factor_authentication": false, + "last_login": "0001-01-01T00:00:00Z", + "last_login_id": "10.1.1.1", + "updated_at": "0001-01-01T00:00:00Z", + "created_at": "0001-01-01T00:00:00Z", + "newsletter_subscribed": true, + "email_validated": true + }, "properties": { - "active_time_seconds": { - "type": "string", - "format": "int64" + "id": { + "type": "string" }, - "compute_time_seconds": { - "type": "string", - "format": "int64" + "email": { + "type": "string" }, - "written_data_bytes": { - "type": "string", - "format": "int64" + "avatar_url": { + "type": "string" }, - "data_transfer_bytes": { - "type": "string", - "format": "int64" + "two_factor_authentication": { + "type": "boolean" }, - "data_storage_bytes_hour": { + "last_login": { "type": "string", - "format": "int64" + "format": "date-time" }, - "server_host": { + "last_login_ip": { "type": "string" }, - "server_port": { - "type": "integer", - "format": "int64" - }, - "endpoint_state": { - "type": "string" + "updated_at": { + "type": "string", + "format": "date-time" }, - "endpoint_last_active": { + "created_at": { "type": "string", "format": "date-time" }, - "default_branch_id": { - "type": "string" + "newsletter_subscribed": { + "type": "boolean" }, - "default_branch_name": { + "github_id": { "type": "string" }, - "default_branch_state": { + "github_user": { "type": "string" }, - "default_branch_logical_size": { - "type": "string", - "format": "int64" - }, - "roles": { + "flags": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentNeonPostgresDatabaseInfoRole" + "$ref": "#/definitions/UserFlags" } + }, + "name": { + "type": "string" + }, + "email_validated": { + "type": "boolean" + } + }, + "title": "Represent a User" + }, + "UserFlags": { + "type": "string", + "enum": [ + "ADMIN", + "TEST", + "RESTRICTED", + "ACTIVE", + "BETA" + ], + "default": "ADMIN", + "title": "- ADMIN: A user is an admin user\n - TEST: A user is a test user\n - RESTRICTED: Whether this account as restricted access\n - ACTIVE: Whether this account is active\n - BETA: Account in beta program" + }, + "UserReply": { + "type": "object", + "properties": { + "user": { + "$ref": "#/definitions/User" } } }, - "DeploymentNeonPostgresDatabaseInfoRole": { + "Empty": { + "type": "object" + }, + "kgitproxy.GithubInstallation.Status": { + "type": "string", + "enum": [ + "INVALID", + "INSTALLED", + "SUSPENDED", + "DELETED" + ], + "default": "INVALID" + }, + "kgitproxy.IndexingStatus": { + "type": "string", + "enum": [ + "INVALID_INDEXING_STATUS", + "NOT_STARTED", + "IN_PROGRESS", + "COMPLETED" + ], + "default": "INVALID_INDEXING_STATUS" + }, + "CreateOrganizationInvitationReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "secret_id": { - "type": "string" + "invitation": { + "$ref": "#/definitions/OrganizationInvitation", + "title": "The organization invitation sent" } } }, - "DeploymentPort": { + "CreateOrganizationInvitationRequest": { "type": "object", "properties": { - "port": { - "type": "integer", - "format": "int64" - }, - "protocol": { + "email": { "type": "string", - "title": "One of http, http2, tcp" + "title": "The email of the person to invite" } } }, - "DeploymentProvisioningInfo": { + "DeleteOrganizationInvitationReply": { + "type": "object" + }, + "GetOrganizationInvitationReply": { "type": "object", "properties": { - "sha": { - "type": "string", - "description": "The git sha for this build (we resolve the reference at the start of the build)." - }, - "image": { - "type": "string", - "description": "The docker image built as a result of this build." - }, - "stages": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentProvisioningInfo.Stage" - }, - "description": "Some info about the build." + "invitation": { + "$ref": "#/definitions/OrganizationInvitation" } } }, - "DeploymentProvisioningInfo.Stage": { + "ListOrganizationInvitationsReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "status": { - "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.Status" - }, - "messages": { + "invitations": { "type": "array", "items": { - "type": "string" - } + "$ref": "#/definitions/OrganizationInvitation" + }, + "title": "The collection of organization invitations" }, - "started_at": { - "type": "string", - "format": "date-time" + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" }, - "finished_at": { - "type": "string", - "format": "date-time" + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" }, - "build_attempts": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.BuildAttempt" - } + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" } } }, - "DeploymentProvisioningInfo.Stage.BuildAttempt": { + "ResendOrganizationInvitationReply": { "type": "object", "properties": { - "id": { - "type": "integer", - "format": "int64" - }, - "status": { - "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" - } - }, - "started_at": { - "type": "string", - "format": "date-time" - }, - "finished_at": { - "type": "string", - "format": "date-time" + "invitation": { + "$ref": "#/definitions/OrganizationInvitation", + "title": "The organization invitation resent" } } }, - "DeploymentProvisioningInfo.Stage.Status": { - "type": "string", - "enum": [ - "UNKNOWN", - "RUNNING", - "FAILED", - "COMPLETED", - "ABORTED" - ], - "default": "UNKNOWN" - }, - "DeploymentRoute": { + "LoginRequest": { "type": "object", - "properties": { - "port": { - "type": "integer", - "format": "int64" + "example": { + "email": "john@snow.com", + "password": "..." + }, + "properties": { + "email": { + "type": "string", + "title": "User email" }, - "path": { - "type": "string" + "password": { + "type": "string", + "title": "User password" + }, + "organization_id": { + "type": "string", + "title": "(Optional) Login into this organization" } } }, - "DeploymentScaling": { + "LogoutReply": { + "type": "object" + }, + "ConfirmPaymentAuthorizationReply": { "type": "object", "properties": { - "scopes": { - "type": "array", - "items": { - "type": "string" - } - }, - "min": { - "type": "integer", - "format": "int64" - }, - "max": { - "type": "integer", - "format": "int64" + "payment_method": { + "$ref": "#/definitions/PaymentMethod" } } }, - "DesiredDeployment": { + "CreatePaymentAuthorizationReply": { "type": "object", "properties": { - "groups": { - "type": "array", - "items": { - "$ref": "#/definitions/DesiredDeployment.Group" - } + "payment_method": { + "$ref": "#/definitions/PaymentMethod" } } }, - "DesiredDeployment.Group": { + "CreatePaymentAuthorizationRequest": { + "type": "object" + }, + "DeletePaymentMethodReply": { + "type": "object" + }, + "GetPaymentMethodReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "deployment_ids": { - "type": "array", - "items": { - "type": "string" - } + "payment_method": { + "$ref": "#/definitions/PaymentMethod" } } }, - "DockerBuilder": { + "ListPaymentMethodsReply": { "type": "object", "properties": { - "dockerfile": { - "type": "string", - "title": "A path to the Dockerfile" - }, - "entrypoint": { + "payment_methods": { "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/PaymentMethod" }, - "title": "The docker ENTRYPOINT" - }, - "command": { - "type": "string", - "title": "The docker CMD" + "title": "The collection of payment methods" }, - "args": { - "type": "array", - "items": { - "type": "string" - }, - "title": "The docker CMD args" + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" }, - "target": { - "type": "string", - "title": "The target for multi-stage builds" + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" }, - "privileged": { - "type": "boolean", - "title": "A flag to run the container in privileged mode" + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" } } }, - "DockerSource": { + "PaymentMethod": { "type": "object", "properties": { - "image": { + "id": { "type": "string" }, - "command": { + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "version": { + "type": "string", + "format": "uint64" + }, + "organization_id": { "type": "string" }, - "args": { - "type": "array", - "items": { - "type": "string" - } + "type": { + "type": "string" }, - "image_registry_secret": { + "provider": { "type": "string" }, - "entrypoint": { + "status": { + "$ref": "#/definitions/PaymentMethod.Status" + }, + "messages": { "type": "array", "items": { "type": "string" } }, - "privileged": { - "type": "boolean", - "title": "A flag to run the container in privileged mode" - } - } - }, - "GetServiceReply": { - "type": "object", - "properties": { - "service": { - "$ref": "#/definitions/Service", - "title": "The Service retrieved" - } - } - }, - "GitDeploymentMetadata": { - "type": "object", - "properties": { - "provider": { - "$ref": "#/definitions/GitDeploymentMetadata.Provider" + "stripe_payment_method_id": { + "type": "string" }, - "repository": { + "authorization_verified_at": { + "type": "string", + "format": "date-time" + }, + "authorization_canceled_at": { + "type": "string", + "format": "date-time" + }, + "authorization_stripe_payment_intent_id": { "type": "string" }, - "branch": { + "authorization_stripe_payment_intent_client_secret": { "type": "string" }, - "sha": { + "card_brand": { "type": "string" }, - "message": { + "card_country": { "type": "string" }, - "sender_username": { + "card_funding": { "type": "string" }, - "sender_avatar_url": { + "card_fingerprint": { "type": "string" }, - "sender_profile_url": { + "card_last_digits": { "type": "string" + }, + "card_expiration_month": { + "type": "integer", + "format": "int64" + }, + "card_expiration_year": { + "type": "integer", + "format": "int64" } } }, - "GitDeploymentMetadata.Provider": { + "PaymentMethod.Status": { "type": "string", "enum": [ - "UNKNOWN", - "GITHUB" + "INVALID", + "CREATED", + "AUTHORIZED", + "DECLINED", + "CANCELED", + "EXPIRED", + "UNCHECKED" ], - "default": "UNKNOWN" + "default": "INVALID" }, - "GitSource": { + "CreateCredential": { "type": "object", "properties": { - "repository": { - "type": "string", - "description": "A url to a git repository (contains the provider as well) .e.g: github.com/koyeb/test." - }, - "branch": { + "name": { "type": "string", - "title": "A git branch that will be tracked for new commits and deployments will be created" + "title": "Credential name" }, - "tag": { + "description": { "type": "string", - "title": "A git tag that should be built" + "title": "Credential description" }, - "sha": { - "type": "string", - "title": "A git commit that should be built (useful for pinning to a commit, this will always be set when a deployment is created by a code push)" + "type": { + "$ref": "#/definitions/Credential.Type", + "title": "Credential type" }, - "build_command": { + "organization_id": { "type": "string", - "title": "A command used to override the build command, run after all build steps \u2014\u00a0deprecated, use buildpack.build_command instead" + "title": "Organization id for user credential" + } + } + }, + "CreateCredentialReply": { + "type": "object", + "properties": { + "credential": { + "$ref": "#/definitions/Credential" + } + } + }, + "Credential": { + "type": "object", + "properties": { + "id": { + "type": "string" }, - "run_command": { - "type": "string", - "title": "A command used to override the default run command - deprecated, use buildpack.run_command instead" + "type": { + "$ref": "#/definitions/Credential.Type" }, - "no_deploy_on_push": { - "type": "boolean", - "title": "A flag to disable a new deployment when a push event is detected" + "name": { + "type": "string" }, - "workdir": { - "type": "string", - "title": "A subdirectory to use as the build directory" + "token": { + "type": "string" }, - "buildpack": { - "$ref": "#/definitions/BuildpackBuilder" + "description": { + "type": "string" }, - "docker": { - "$ref": "#/definitions/DockerBuilder" - } - } - }, - "HTTPHeader": { - "type": "object", - "properties": { - "key": { + "user_id": { "type": "string" }, - "value": { + "organization_id": { "type": "string" - } - } - }, - "HTTPHealthCheck": { - "type": "object", - "properties": { - "port": { - "type": "integer", - "format": "int64", - "title": "The port to use to perform the health check, must be declared in the ports section" }, - "path": { + "updated_at": { "type": "string", - "title": "The path to use to perform the HTTP health check" + "format": "date-time" }, - "method": { + "created_at": { "type": "string", - "title": "An optional HTTP method to use to perform the health check, default is GET" - }, - "headers": { - "type": "array", - "items": { - "$ref": "#/definitions/HTTPHeader" - }, - "title": "An optional list of HTTP headers to provide when performing the request, default is empty" + "format": "date-time" } } }, - "ListServiceEventsReply": { + "Credential.Type": { + "type": "string", + "enum": [ + "INVALID", + "USER", + "ORGANIZATION" + ], + "default": "INVALID" + }, + "DeleteCredentialReply": { + "type": "object" + }, + "GetCredentialReply": { "type": "object", "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceEvent" - }, - "title": "The collection of events" - }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" - }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" - }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - }, - "order": { - "type": "string", - "title": "The order in the request" + "credential": { + "$ref": "#/definitions/Credential" } } }, - "ListServicesReply": { + "ListCredentialsReply": { "type": "object", "properties": { - "services": { + "credentials": { "type": "array", "items": { - "$ref": "#/definitions/ServiceListItem" + "$ref": "#/definitions/Credential" } }, "limit": { "type": "integer", - "format": "int64", - "title": "The limit in the request" + "format": "int64" }, "offset": { "type": "integer", - "format": "int64", - "title": "The offset in the request" + "format": "int64" }, "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - } - } - }, - "NeonPostgresDatabase": { - "type": "object", - "properties": { - "pg_version": { "type": "integer", "format": "int64" - }, - "region": { - "type": "string" - }, - "roles": { - "type": "array", - "items": { - "$ref": "#/definitions/NeonPostgresDatabase.NeonRole" - } - }, - "databases": { - "type": "array", - "items": { - "$ref": "#/definitions/NeonPostgresDatabase.NeonDatabase" - } } } }, - "NeonPostgresDatabase.NeonDatabase": { + "UpdateCredentialReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "owner": { - "type": "string" + "credential": { + "$ref": "#/definitions/Credential" } } }, - "NeonPostgresDatabase.NeonRole": { + "ConfirmOrganizationActionReply": { + "type": "object" + }, + "GetQuotasReply": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "secret": { - "type": "string" + "quotas": { + "$ref": "#/definitions/Quotas" } } }, - "NeonPostgresDatabaseDeploymentMetadata": { + "Quotas": { "type": "object", "properties": { - "reset_role_passwords": { + "apps": { + "type": "string", + "format": "int64" + }, + "services": { + "type": "string", + "format": "int64" + }, + "domains": { + "type": "string", + "format": "int64" + }, + "services_by_app": { + "type": "string", + "format": "int64" + }, + "service_provisioning_concurrency": { + "type": "string", + "format": "int64" + }, + "memory_mb": { + "type": "string", + "format": "int64" + }, + "instance_types": { + "type": "array", + "items": { + "type": "string" + } + }, + "regions": { "type": "array", "items": { "type": "string" } + }, + "max_organization_members": { + "type": "string", + "format": "int64" + }, + "max_instances_by_type": { + "type": "object", + "additionalProperties": { + "type": "string", + "format": "int64" + } } } }, - "PauseServiceReply": { - "type": "object" - }, - "RedeployReply": { + "DeleteUserReply": { "type": "object", "properties": { - "deployment": { - "$ref": "#/definitions/Deployment", - "title": "The entity updated" + "user": { + "$ref": "#/definitions/User" } } }, - "RedeployRequest.Info": { + "GetSubscriptionReply": { "type": "object", "properties": { - "deployment_group": { - "type": "string" - }, - "sha": { - "type": "string" - }, - "use_cache": { - "type": "boolean" + "subscription": { + "$ref": "#/definitions/Subscription" } } }, - "ResumeServiceReply": { - "type": "object" - }, - "Service": { + "Subscription": { "type": "object", "properties": { "id": { @@ -8781,243 +9815,356 @@ "type": "string", "format": "date-time" }, - "started_at": { + "version": { + "type": "string", + "format": "uint64" + }, + "organization_id": { + "type": "string" + }, + "stripe_subscription_id": { + "type": "string" + }, + "status": { + "$ref": "#/definitions/Subscription.Status" + }, + "messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_pending_update": { + "type": "boolean" + }, + "stripe_pending_invoice_id": { + "type": "string" + }, + "terminate_at": { "type": "string", "format": "date-time" }, - "succeeded_at": { + "canceled_at": { + "type": "string", + "format": "date-time" + }, + "terminated_at": { + "type": "string", + "format": "date-time" + }, + "current_period_start": { + "type": "string", + "format": "date-time" + }, + "current_period_end": { "type": "string", "format": "date-time" }, - "paused_at": { + "currency": { + "type": "string" + }, + "amount_payable": { + "type": "string", + "format": "int64" + }, + "amount_paid": { + "type": "string", + "format": "int64" + }, + "amount_remaining": { + "type": "string", + "format": "int64" + }, + "payment_failure": { + "$ref": "#/definitions/Subscription.PaymentFailure" + } + } + }, + "Subscription.PaymentFailure": { + "type": "object", + "properties": { + "failed_at": { "type": "string", "format": "date-time" }, - "resumed_at": { + "next_attempt": { "type": "string", "format": "date-time" }, - "terminated_at": { + "attempt_count": { "type": "string", - "format": "date-time" + "format": "int64" }, - "name": { + "error_code": { "type": "string" }, - "type": { - "$ref": "#/definitions/Service.Type" - }, - "organization_id": { + "error_reason": { "type": "string" }, - "app_id": { + "error_type": { "type": "string" }, - "status": { - "$ref": "#/definitions/Service.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" - } + "error_message": { + "type": "string" }, - "version": { - "type": "string", - "format": "uint64" + "payment_method_required": { + "type": "boolean" }, - "active_deployment_id": { + "redirect_url": { "type": "string" }, - "latest_deployment_id": { + "stripe_sdk": { + "$ref": "#/definitions/Subscription.PaymentFailure.StripeSDK" + } + } + }, + "Subscription.PaymentFailure.StripeSDK": { + "type": "object", + "properties": { + "client_secret_key": { "type": "string" }, - "state": { - "$ref": "#/definitions/ServiceState", - "title": "Legacy stuff" + "raw_json": { + "type": "string" } } }, - "Service.Status": { - "type": "string", - "enum": [ - "STARTING", - "HEALTHY", - "DEGRADED", - "UNHEALTHY", - "DELETING", - "DELETED", - "PAUSING", - "PAUSED", - "RESUMING" - ], - "default": "STARTING" - }, - "Service.Type": { + "Subscription.Status": { "type": "string", "enum": [ - "INVALID_TYPE", - "WEB", - "WORKER", - "DATABASE" + "INVALID", + "CREATED", + "ACTIVE", + "WARNING", + "URGENT", + "CANCELING", + "CANCELED", + "TERMINATING", + "TERMINATED" ], - "default": "INVALID_TYPE" + "default": "INVALID" }, - "ServiceEvent": { + "kgitproxy.Branch": { "type": "object", "properties": { "id": { "type": "string" }, - "when": { - "type": "string", - "format": "date-time" - }, "organization_id": { "type": "string" }, - "service_id": { + "repository_id": { "type": "string" }, - "type": { + "name": { "type": "string" }, - "message": { - "type": "string" + "is_default": { + "type": "boolean" }, - "metadata": { - "type": "object" + "is_protected": { + "type": "boolean" + }, + "provider": { + "$ref": "#/definitions/kgitproxy.RepositoryProvider" } } }, - "ServiceListItem": { + "kgitproxy.GitHubRepository": { "type": "object", "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/Service.Type" - }, - "organization_id": { - "type": "string" - }, - "app_id": { - "type": "string" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "status": { - "$ref": "#/definitions/Service.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" - } - }, - "version": { - "type": "string", - "format": "uint64", - "title": "A version updated whenever this state changes (useful for caching)" - }, - "state": { - "$ref": "#/definitions/ServiceState" - }, - "active_deployment_id": { - "type": "string" - }, - "latest_deployment_id": { + "github_id": { "type": "string" } } }, - "ServiceState": { + "kgitproxy.ListBranchesReply": { "type": "object", "properties": { - "desired_deployment": { - "$ref": "#/definitions/DesiredDeployment" + "branches": { + "type": "array", + "items": { + "$ref": "#/definitions/kgitproxy.Branch" + }, + "description": "The collection of branches." }, - "auto_release": { - "$ref": "#/definitions/AutoRelease" + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit in the request." + }, + "offset": { + "type": "integer", + "format": "int64", + "description": "The offset in the request." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "The total number of items." } } }, - "TCPHealthCheck": { + "kgitproxy.ListRepositoriesReply": { "type": "object", "properties": { - "port": { + "repositories": { + "type": "array", + "items": { + "$ref": "#/definitions/kgitproxy.Repository" + }, + "description": "The collection of repositories." + }, + "limit": { "type": "integer", "format": "int64", - "title": "The port to use to perform the health check, must be declared in the ports section" + "description": "The limit in the request." + }, + "offset": { + "type": "integer", + "format": "int64", + "description": "The offset in the request." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "The total number of items." } } }, - "TriggerDeploymentMetadata": { + "kgitproxy.Repository": { "type": "object", "properties": { - "type": { - "$ref": "#/definitions/TriggerDeploymentMetadata.TriggerType" + "id": { + "type": "string" }, - "actor": { - "$ref": "#/definitions/TriggerDeploymentMetadata.ActorType" + "organization_id": { + "type": "string" }, - "git": { - "$ref": "#/definitions/GitDeploymentMetadata" + "name": { + "type": "string" + }, + "url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "is_private": { + "type": "boolean" + }, + "is_disabled": { + "type": "boolean" + }, + "default_branch": { + "type": "string" + }, + "provider": { + "$ref": "#/definitions/kgitproxy.RepositoryProvider" + }, + "last_push_date": { + "type": "string", + "format": "date-time" + }, + "github": { + "$ref": "#/definitions/kgitproxy.GitHubRepository" } } }, - "TriggerDeploymentMetadata.ActorType": { - "type": "string", - "enum": [ - "UNKNOWN_ACTOR", - "USER", - "SYSTEM" - ], - "default": "UNKNOWN_ACTOR" - }, - "TriggerDeploymentMetadata.TriggerType": { + "kgitproxy.RepositoryProvider": { "type": "string", "enum": [ - "UNKNOWN_TYPE", - "GIT", - "RESUME" + "INVALID_PROVIDER", + "GITHUB" ], - "default": "UNKNOWN_TYPE" + "default": "INVALID_PROVIDER" }, - "UpdateService": { + "kgitproxy.ResyncOrganizationReply": { + "type": "object" + }, + "GetInstanceReply": { "type": "object", "properties": { - "definition": { - "$ref": "#/definitions/DeploymentDefinition" - }, - "metadata": { - "$ref": "#/definitions/DeploymentMetadata" + "instance": { + "$ref": "#/definitions/Instance" } } }, - "UpdateServiceReply": { + "Instance": { "type": "object", "properties": { - "service": { - "$ref": "#/definitions/Service", - "title": "The entity updated" + "id": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "organization_id": { + "type": "string" + }, + "app_id": { + "type": "string" + }, + "service_id": { + "type": "string" + }, + "regional_deployment_id": { + "type": "string" + }, + "allocation_id": { + "type": "string" + }, + "region": { + "type": "string" + }, + "datacenter": { + "type": "string" + }, + "hypervisor": { + "type": "string" + }, + "status": { + "$ref": "#/definitions/Instance.Status" + }, + "messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "started_at": { + "type": "string", + "format": "date-time" + }, + "terminated_at": { + "type": "string", + "format": "date-time" + }, + "xyz_deployment_id": { + "type": "string", + "description": "WARNING: Please don't use the following attribute.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK." } } }, - "CancelDeploymentReply": { - "type": "object" + "Instance.Status": { + "type": "string", + "enum": [ + "ALLOCATING", + "STARTING", + "HEALTHY", + "UNHEALTHY", + "STOPPING", + "STOPPED", + "ERROR" + ], + "default": "ALLOCATING" }, - "DeploymentEvent": { + "InstanceEvent": { "type": "object", "properties": { "id": { @@ -9030,7 +10177,7 @@ "organization_id": { "type": "string" }, - "deployment_id": { + "instance_id": { "type": "string" }, "type": { @@ -9044,7 +10191,7 @@ } } }, - "DeploymentListItem": { + "InstanceListItem": { "type": "object", "properties": { "id": { @@ -9058,22 +10205,6 @@ "type": "string", "format": "date-time" }, - "allocated_at": { - "type": "string", - "format": "date-time" - }, - "started_at": { - "type": "string", - "format": "date-time" - }, - "succeeded_at": { - "type": "string", - "format": "date-time" - }, - "terminated_at": { - "type": "string", - "format": "date-time" - }, "organization_id": { "type": "string" }, @@ -9083,20 +10214,20 @@ "service_id": { "type": "string" }, - "parent_id": { + "regional_deployment_id": { "type": "string" }, - "child_id": { + "allocation_id": { "type": "string" }, - "status": { - "$ref": "#/definitions/Deployment.Status" + "region": { + "type": "string" }, - "metadata": { - "$ref": "#/definitions/DeploymentMetadata" + "datacenter": { + "type": "string" }, - "definition": { - "$ref": "#/definitions/DeploymentDefinition" + "status": { + "$ref": "#/definitions/Instance.Status" }, "messages": { "type": "array", @@ -9104,36 +10235,19 @@ "type": "string" } }, - "provisioning_info": { - "$ref": "#/definitions/DeploymentProvisioningInfo" - }, - "database_info": { - "$ref": "#/definitions/DeploymentDatabaseInfo" - }, - "version": { + "xyz_deployment_id": { "type": "string", - "format": "uint64" - }, - "deployment_group": { - "type": "string" - } - } - }, - "GetDeploymentReply": { - "type": "object", - "properties": { - "deployment": { - "$ref": "#/definitions/Deployment" + "description": "WARNING: Please don't use the following attribute.\nKoyeb doesn't guarantee backwards compatible breaking change and reserve the right to completely drop it without notice.\nUSE AT YOUR OWN RISK." } } }, - "ListDeploymentEventsReply": { + "ListInstanceEventsReply": { "type": "object", "properties": { "events": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentEvent" + "$ref": "#/definitions/InstanceEvent" }, "title": "The collection of events" }, @@ -9158,15 +10272,15 @@ } } }, - "ListDeploymentsReply": { + "ListInstancesReply": { "type": "object", "properties": { - "deployments": { + "instances": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentListItem" + "$ref": "#/definitions/InstanceListItem" }, - "title": "The collection of deployments" + "title": "The collection of instances" }, "limit": { "type": "integer", @@ -9182,830 +10296,735 @@ "type": "integer", "format": "int64", "title": "The total number of items" - } - } - }, - "AzureContainerRegistryConfiguration": { - "type": "object", - "properties": { - "registry_name": { - "type": "string" - }, - "username": { - "type": "string" - }, - "password": { - "type": "string" - } - } - }, - "CreateSecret": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/SecretType" - }, - "value": { - "type": "string" }, - "docker_hub_registry": { - "$ref": "#/definitions/DockerHubRegistryConfiguration" - }, - "private_registry": { - "$ref": "#/definitions/PrivateRegistryConfiguration" - }, - "digital_ocean_registry": { - "$ref": "#/definitions/DigitalOceanRegistryConfiguration" - }, - "github_registry": { - "$ref": "#/definitions/GitHubRegistryConfiguration" - }, - "gitlab_registry": { - "$ref": "#/definitions/GitLabRegistryConfiguration" - }, - "gcp_container_registry": { - "$ref": "#/definitions/GCPContainerRegistryConfiguration" - }, - "azure_container_registry": { - "$ref": "#/definitions/AzureContainerRegistryConfiguration" - } - } - }, - "CreateSecretReply": { - "type": "object", - "properties": { - "secret": { - "$ref": "#/definitions/Secret" - } - } - }, - "DatabaseRolePassword": { - "type": "object", - "properties": { - "username": { - "type": "string" - }, - "password": { - "type": "string" - } - } - }, - "DeleteSecretReply": { - "type": "object" - }, - "DigitalOceanRegistryConfiguration": { - "type": "object", - "properties": { - "username": { - "type": "string" - }, - "password": { - "type": "string" + "order": { + "type": "string", + "title": "The order in the request" } } }, - "DockerHubRegistryConfiguration": { + "AutoRelease": { "type": "object", "properties": { - "username": { - "type": "string" - }, - "password": { - "type": "string" + "groups": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoRelease.Group" + } } } }, - "GCPContainerRegistryConfiguration": { + "AutoRelease.Group": { "type": "object", "properties": { - "keyfile_content": { + "name": { "type": "string" }, - "url": { + "repository": { "type": "string" + }, + "git_ref": { + "type": "string", + "title": "A git ref to track (.e.g: refs/tags/ or refs/heads/" + }, + "latest_sha": { + "type": "string", + "title": "The last hash that was resolved (used to avoid triggering releases when things haven't changed)" } - } + }, + "title": "Configuration extracted from the latest deployment in this deployment_group" }, - "GetSecretReply": { + "BuildpackBuilder": { "type": "object", "properties": { - "secret": { - "$ref": "#/definitions/Secret" + "build_command": { + "type": "string", + "title": "A command used to override the build command, run after all build steps" + }, + "run_command": { + "type": "string", + "title": "A command used to override the default run command" + }, + "privileged": { + "type": "boolean", + "title": "A flag to run the container in privileged mode" } } }, - "GitHubRegistryConfiguration": { + "CreateService": { "type": "object", "properties": { - "username": { + "app_id": { "type": "string" }, - "password": { - "type": "string" + "definition": { + "$ref": "#/definitions/DeploymentDefinition" } } }, - "GitLabRegistryConfiguration": { + "CreateServiceReply": { "type": "object", "properties": { - "username": { - "type": "string" - }, - "password": { - "type": "string" + "service": { + "$ref": "#/definitions/Service", + "title": "The entity created" } } }, - "ListSecretsReply": { + "DatabaseDeploymentMetadata": { "type": "object", "properties": { - "secrets": { - "type": "array", - "items": { - "$ref": "#/definitions/Secret" - } - }, - "limit": { - "type": "integer", - "format": "int64" - }, - "offset": { - "type": "integer", - "format": "int64" - }, - "count": { - "type": "integer", - "format": "int64" + "neon_postgres": { + "$ref": "#/definitions/NeonPostgresDatabaseDeploymentMetadata" } } }, - "PrivateRegistryConfiguration": { + "DatabaseSource": { "type": "object", "properties": { - "username": { - "type": "string" - }, - "password": { - "type": "string" - }, - "url": { - "type": "string" + "neon_postgres": { + "$ref": "#/definitions/NeonPostgresDatabase" } } }, - "RevealSecretReply": { - "type": "object", - "properties": { - "value": {} - } + "DeleteServiceReply": { + "type": "object" }, - "Secret": { + "Deployment": { "type": "object", "properties": { "id": { "type": "string" }, - "name": { - "type": "string" + "created_at": { + "type": "string", + "format": "date-time" }, - "organization_id": { - "type": "string" + "updated_at": { + "type": "string", + "format": "date-time" }, - "type": { - "$ref": "#/definitions/SecretType" + "allocated_at": { + "type": "string", + "format": "date-time" }, - "updated_at": { + "started_at": { "type": "string", "format": "date-time" }, - "created_at": { + "succeeded_at": { "type": "string", "format": "date-time" }, - "value": { + "terminated_at": { + "type": "string", + "format": "date-time" + }, + "organization_id": { "type": "string" }, - "docker_hub_registry": { - "$ref": "#/definitions/DockerHubRegistryConfiguration" + "app_id": { + "type": "string" }, - "private_registry": { - "$ref": "#/definitions/PrivateRegistryConfiguration" + "service_id": { + "type": "string" }, - "digital_ocean_registry": { - "$ref": "#/definitions/DigitalOceanRegistryConfiguration" + "parent_id": { + "type": "string" }, - "github_registry": { - "$ref": "#/definitions/GitHubRegistryConfiguration" + "child_id": { + "type": "string" }, - "gitlab_registry": { - "$ref": "#/definitions/GitLabRegistryConfiguration" + "status": { + "$ref": "#/definitions/Deployment.Status" }, - "gcp_container_registry": { - "$ref": "#/definitions/GCPContainerRegistryConfiguration" + "metadata": { + "$ref": "#/definitions/DeploymentMetadata" }, - "azure_container_registry": { - "$ref": "#/definitions/AzureContainerRegistryConfiguration" + "definition": { + "$ref": "#/definitions/DeploymentDefinition" }, - "database_role_password": { - "$ref": "#/definitions/DatabaseRolePassword" + "messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "provisioning_info": { + "$ref": "#/definitions/DeploymentProvisioningInfo" + }, + "database_info": { + "$ref": "#/definitions/DeploymentDatabaseInfo" + }, + "version": { + "type": "string", + "format": "uint64" + }, + "deployment_group": { + "type": "string" } } }, - "SecretType": { + "Deployment.Status": { "type": "string", "enum": [ - "SIMPLE", - "REGISTRY", - "MANAGED" + "PENDING", + "PROVISIONING", + "SCHEDULED", + "CANCELING", + "CANCELED", + "ALLOCATING", + "STARTING", + "HEALTHY", + "DEGRADED", + "UNHEALTHY", + "STOPPING", + "STOPPED", + "ERRORING", + "ERROR" ], - "default": "SIMPLE" + "default": "PENDING" }, - "UpdateSecretReply": { + "DeploymentDatabaseInfo": { "type": "object", "properties": { - "secret": { - "$ref": "#/definitions/Secret" + "neon_postgres": { + "$ref": "#/definitions/DeploymentNeonPostgresDatabaseInfo" } } }, - "CreateDomain": { + "DeploymentDefinition": { "type": "object", "properties": { "name": { "type": "string" }, "type": { - "$ref": "#/definitions/Domain.Type" - }, - "app_id": { - "type": "string", - "title": "to auto-attach to an app. Optional" - } - } - }, - "CreateDomainReply": { - "type": "object", - "properties": { - "domain": { - "$ref": "#/definitions/Domain" - } - } - }, - "DeleteDomainReply": { - "type": "object" - }, - "Domain": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "organization_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" + "$ref": "#/definitions/DeploymentDefinition.Type" }, - "status": { - "$ref": "#/definitions/Domain.Status" + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentRoute" + } }, - "type": { - "$ref": "#/definitions/Domain.Type" + "ports": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentPort" + } }, - "app_id": { - "type": "string" + "env": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentEnv" + } }, - "deployment_group": { - "type": "string" + "regions": { + "type": "array", + "items": { + "type": "string" + } }, - "verified_at": { - "type": "string", - "format": "date-time" + "scalings": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentScaling" + } }, - "intended_cname": { - "type": "string" + "instance_types": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentInstanceType" + } }, - "messages": { + "health_checks": { "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/DeploymentHealthCheck" } }, - "version": { - "type": "string", - "format": "uint64" + "skip_cache": { + "type": "boolean" + }, + "docker": { + "$ref": "#/definitions/DockerSource" + }, + "git": { + "$ref": "#/definitions/GitSource" + }, + "database": { + "$ref": "#/definitions/DatabaseSource" } } }, - "Domain.Status": { - "type": "string", - "enum": [ - "PENDING", - "ACTIVE", - "ERROR", - "DELETING", - "DELETED" - ], - "default": "PENDING" - }, - "Domain.Type": { + "DeploymentDefinition.Type": { "type": "string", "enum": [ - "AUTOASSIGNED", - "CUSTOM" + "INVALID", + "WEB", + "WORKER", + "DATABASE" ], - "default": "AUTOASSIGNED", - "title": "- AUTOASSIGNED: Domain like -.koyeb.app" + "default": "INVALID" }, - "GetDomainReply": { + "DeploymentEnv": { "type": "object", "properties": { - "domain": { - "$ref": "#/definitions/Domain" + "scopes": { + "type": "array", + "items": { + "type": "string" + } + }, + "key": { + "type": "string" + }, + "value": { + "type": "string" + }, + "secret": { + "type": "string" } } }, - "ListDomainsReply": { + "DeploymentHealthCheck": { "type": "object", "properties": { - "domains": { - "type": "array", - "items": { - "$ref": "#/definitions/Domain" - } + "grace_period": { + "type": "integer", + "format": "int64", + "title": "An optional initial period in seconds to wait for the instance to become healthy, default is 5s" }, - "limit": { + "interval": { "type": "integer", "format": "int64", - "title": "The limit in the request" + "title": "An optional period in seconds between two health checks, default is 60s" }, - "offset": { + "restart_limit": { "type": "integer", "format": "int64", - "title": "The offset in the request" + "title": "An optional number of consecutive failures before attempting to restart the service, default is 3" }, - "count": { + "timeout": { "type": "integer", "format": "int64", - "title": "The total number of items" + "title": "An optional maximum time to wait in seconds before considering the check as a failure, default is 5s" + }, + "tcp": { + "$ref": "#/definitions/TCPHealthCheck" + }, + "http": { + "$ref": "#/definitions/HTTPHealthCheck" } } }, - "RefreshDomainStatusReply": { - "type": "object" - }, - "UpdateDomain": { + "DeploymentInstanceType": { "type": "object", "properties": { - "app_id": { - "type": "string", - "title": "To attach or detach from an app" + "scopes": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "type": "string" } } }, - "UpdateDomainReply": { + "DeploymentMetadata": { "type": "object", "properties": { - "domain": { - "$ref": "#/definitions/Domain" + "trigger": { + "$ref": "#/definitions/TriggerDeploymentMetadata" + }, + "database": { + "$ref": "#/definitions/DatabaseDeploymentMetadata" } } }, - "App": { + "DeploymentNeonPostgresDatabaseInfo": { "type": "object", "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "organization_id": { - "type": "string" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "started_at": { + "active_time_seconds": { "type": "string", - "format": "date-time" + "format": "int64" }, - "succeeded_at": { + "compute_time_seconds": { "type": "string", - "format": "date-time" + "format": "int64" }, - "paused_at": { + "written_data_bytes": { "type": "string", - "format": "date-time" + "format": "int64" }, - "resumed_at": { + "data_transfer_bytes": { "type": "string", - "format": "date-time" + "format": "int64" }, - "terminated_at": { + "data_storage_bytes_hour": { "type": "string", - "format": "date-time" - }, - "status": { - "$ref": "#/definitions/App.Status" + "format": "int64" }, - "messages": { - "type": "array", - "items": { - "type": "string" - } + "server_host": { + "type": "string" }, - "version": { - "type": "string", - "format": "uint64" + "server_port": { + "type": "integer", + "format": "int64" }, - "domains": { - "type": "array", - "items": { - "$ref": "#/definitions/Domain" - } - } - } - }, - "App.Status": { - "type": "string", - "enum": [ - "STARTING", - "HEALTHY", - "DEGRADED", - "UNHEALTHY", - "DELETING", - "DELETED", - "PAUSING", - "PAUSED", - "RESUMING" - ], - "default": "STARTING" - }, - "AppEvent": { - "type": "object", - "properties": { - "id": { + "endpoint_state": { "type": "string" }, - "when": { + "endpoint_last_active": { "type": "string", "format": "date-time" }, - "organization_id": { - "type": "string" - }, - "app_id": { - "type": "string" - }, - "type": { - "type": "string" - }, - "message": { - "type": "string" - }, - "metadata": { - "type": "object" - } - } - }, - "AppListItem": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "name": { + "default_branch_id": { "type": "string" }, - "organization_id": { + "default_branch_name": { "type": "string" }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "domains": { - "type": "array", - "items": { - "$ref": "#/definitions/Domain" - } + "default_branch_state": { + "type": "string" }, - "status": { - "$ref": "#/definitions/App.Status" + "default_branch_logical_size": { + "type": "string", + "format": "int64" }, - "messages": { + "roles": { "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/DeploymentNeonPostgresDatabaseInfoRole" } } } }, - "CreateApp": { + "DeploymentNeonPostgresDatabaseInfoRole": { "type": "object", "properties": { "name": { "type": "string" + }, + "secret_id": { + "type": "string" } } }, - "CreateAppReply": { + "DeploymentPort": { "type": "object", "properties": { - "app": { - "$ref": "#/definitions/App", - "title": "The entity created" + "port": { + "type": "integer", + "format": "int64" + }, + "protocol": { + "type": "string", + "title": "One of http, http2, tcp" } } }, - "DeleteAppReply": { - "type": "object" - }, - "GetAppReply": { + "DeploymentProvisioningInfo": { "type": "object", "properties": { - "app": { - "$ref": "#/definitions/App", - "title": "The App retrieved" + "sha": { + "type": "string", + "description": "The git sha for this build (we resolve the reference at the start of the build)." + }, + "image": { + "type": "string", + "description": "The docker image built as a result of this build." + }, + "stages": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentProvisioningInfo.Stage" + }, + "description": "Some info about the build." } } }, - "ListAppEventsReply": { + "DeploymentProvisioningInfo.Stage": { "type": "object", "properties": { - "events": { - "type": "array", - "items": { - "$ref": "#/definitions/AppEvent" - }, - "title": "The collection of events" + "name": { + "type": "string" }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" + "status": { + "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.Status" }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" + "messages": { + "type": "array", + "items": { + "type": "string" + } }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" + "started_at": { + "type": "string", + "format": "date-time" }, - "order": { + "finished_at": { "type": "string", - "title": "The order in the request" + "format": "date-time" + }, + "build_attempts": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.BuildAttempt" + } } } }, - "ListAppsReply": { + "DeploymentProvisioningInfo.Stage.BuildAttempt": { "type": "object", "properties": { - "apps": { + "id": { + "type": "integer", + "format": "int64" + }, + "status": { + "$ref": "#/definitions/DeploymentProvisioningInfo.Stage.Status" + }, + "messages": { "type": "array", "items": { - "$ref": "#/definitions/AppListItem" + "type": "string" } }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" - }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" + "started_at": { + "type": "string", + "format": "date-time" }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - } - } - }, - "PauseAppReply": { - "type": "object" - }, - "ResumeAppReply": { - "type": "object" - }, - "UpdateApp": { - "type": "object", - "properties": { - "name": { - "type": "string" + "finished_at": { + "type": "string", + "format": "date-time" } } }, - "UpdateAppReply": { - "type": "object", - "properties": { - "app": { - "$ref": "#/definitions/App", - "title": "The entity updated" - } - } + "DeploymentProvisioningInfo.Stage.Status": { + "type": "string", + "enum": [ + "UNKNOWN", + "RUNNING", + "FAILED", + "COMPLETED", + "ABORTED" + ], + "default": "UNKNOWN" }, - "AppUsage": { + "DeploymentRoute": { "type": "object", "properties": { - "app_id": { - "type": "string" + "port": { + "type": "integer", + "format": "int64" }, - "app_name": { + "path": { "type": "string" - }, - "services": { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceUsage" - } } } }, - "GetOrganizationUsageDetailsReply": { + "DeploymentScaling": { "type": "object", "properties": { - "usage_details": { + "scopes": { "type": "array", "items": { - "$ref": "#/definitions/UsageDetails" - }, - "title": "The collection of usage instances" - }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" + "type": "string" + } }, - "offset": { + "min": { "type": "integer", - "format": "int64", - "title": "The offset in the request" + "format": "int64" }, - "count": { + "max": { "type": "integer", - "format": "int64", - "title": "The total number of items" - }, - "order": { - "type": "string", - "title": "The order in the request" - } - } - }, - "GetOrganizationUsageReply": { - "type": "object", - "properties": { - "usage": { - "$ref": "#/definitions/Usage", - "title": "The computed usage of instances per month" + "format": "int64" } } }, - "InstanceUsage": { + "DesiredDeployment": { "type": "object", "properties": { - "duration_seconds": { - "type": "integer", - "format": "int64" + "groups": { + "type": "array", + "items": { + "$ref": "#/definitions/DesiredDeployment.Group" + } } } }, - "PeriodUsage": { + "DesiredDeployment.Group": { "type": "object", "properties": { - "starting_time": { - "type": "string", - "format": "date-time" - }, - "ending_time": { - "type": "string", - "format": "date-time" + "name": { + "type": "string" }, - "apps": { + "deployment_ids": { "type": "array", "items": { - "$ref": "#/definitions/AppUsage" + "type": "string" } } } }, - "RegionUsage": { + "DockerBuilder": { "type": "object", "properties": { - "instances": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/InstanceUsage" - } + "dockerfile": { + "type": "string", + "title": "A path to the Dockerfile" + }, + "entrypoint": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The docker ENTRYPOINT" + }, + "command": { + "type": "string", + "title": "The docker CMD" + }, + "args": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The docker CMD args" + }, + "target": { + "type": "string", + "title": "The target for multi-stage builds" + }, + "privileged": { + "type": "boolean", + "title": "A flag to run the container in privileged mode" } } }, - "ServiceUsage": { + "DockerSource": { "type": "object", "properties": { - "service_id": { + "image": { "type": "string" }, - "service_name": { + "command": { "type": "string" }, - "regions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/RegionUsage" + "args": { + "type": "array", + "items": { + "type": "string" } + }, + "image_registry_secret": { + "type": "string" + }, + "entrypoint": { + "type": "array", + "items": { + "type": "string" + } + }, + "privileged": { + "type": "boolean", + "title": "A flag to run the container in privileged mode" } } }, - "Usage": { + "GetServiceReply": { "type": "object", "properties": { - "organization_id": { - "type": "string" - }, - "periods": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/PeriodUsage" - } + "service": { + "$ref": "#/definitions/Service", + "title": "The Service retrieved" } } }, - "UsageDetails": { + "GitDeploymentMetadata": { "type": "object", "properties": { - "organization_id": { - "type": "string" + "provider": { + "$ref": "#/definitions/GitDeploymentMetadata.Provider" }, - "instance_id": { + "repository": { "type": "string" }, - "app_id": { + "branch": { "type": "string" }, - "app_name": { + "sha": { "type": "string" }, - "service_id": { + "message": { "type": "string" }, - "service_name": { + "sender_username": { "type": "string" }, - "regional_deployment_id": { + "sender_avatar_url": { "type": "string" }, - "region": { + "sender_profile_url": { "type": "string" + } + } + }, + "GitDeploymentMetadata.Provider": { + "type": "string", + "enum": [ + "UNKNOWN", + "GITHUB" + ], + "default": "UNKNOWN" + }, + "GitSource": { + "type": "object", + "properties": { + "repository": { + "type": "string", + "description": "A url to a git repository (contains the provider as well) .e.g: github.com/koyeb/test." }, - "deployment_id": { - "type": "string" + "branch": { + "type": "string", + "title": "A git branch that will be tracked for new commits and deployments will be created" }, - "instance_type": { - "type": "string" + "tag": { + "type": "string", + "title": "A git tag that should be built" }, - "duration_seconds": { - "type": "integer", - "format": "int64" + "sha": { + "type": "string", + "title": "A git commit that should be built (useful for pinning to a commit, this will always be set when a deployment is created by a code push)" }, - "started_at": { + "build_command": { "type": "string", - "format": "date-time" + "title": "A command used to override the build command, run after all build steps \u2014\u00a0deprecated, use buildpack.build_command instead" }, - "terminated_at": { + "run_command": { "type": "string", - "format": "date-time" + "title": "A command used to override the default run command - deprecated, use buildpack.run_command instead" + }, + "no_deploy_on_push": { + "type": "boolean", + "title": "A flag to disable a new deployment when a push event is detected" + }, + "workdir": { + "type": "string", + "title": "A subdirectory to use as the build directory" + }, + "buildpack": { + "$ref": "#/definitions/BuildpackBuilder" + }, + "docker": { + "$ref": "#/definitions/DockerBuilder" } } }, - "Env": { + "HTTPHeader": { "type": "object", "properties": { "key": { @@ -10013,27 +11032,41 @@ }, "value": { "type": "string" - }, - "secret": { - "type": "string" } } }, - "GetRegionalDeploymentReply": { + "HTTPHealthCheck": { "type": "object", "properties": { - "regional_deployment": { - "$ref": "#/definitions/RegionalDeployment" + "port": { + "type": "integer", + "format": "int64", + "title": "The port to use to perform the health check, must be declared in the ports section" + }, + "path": { + "type": "string", + "title": "The path to use to perform the HTTP health check" + }, + "method": { + "type": "string", + "title": "An optional HTTP method to use to perform the health check, default is GET" + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/HTTPHeader" + }, + "title": "An optional list of HTTP headers to provide when performing the request, default is empty" } } }, - "ListRegionalDeploymentEventsReply": { + "ListServiceEventsReply": { "type": "object", "properties": { "events": { "type": "array", "items": { - "$ref": "#/definitions/RegionalDeploymentEvent" + "$ref": "#/definitions/ServiceEvent" }, "title": "The collection of events" }, @@ -10058,15 +11091,14 @@ } } }, - "ListRegionalDeploymentsReply": { + "ListServicesReply": { "type": "object", "properties": { - "regional_deployments": { + "services": { "type": "array", "items": { - "$ref": "#/definitions/RegionalDeploymentListItem" - }, - "title": "The collection of regional deployments" + "$ref": "#/definitions/ServiceListItem" + } }, "limit": { "type": "integer", @@ -10085,19 +11117,93 @@ } } }, - "Port": { + "NeonPostgresDatabase": { "type": "object", "properties": { - "port": { + "pg_version": { "type": "integer", "format": "int64" }, - "protocol": { + "region": { + "type": "string" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/definitions/NeonPostgresDatabase.NeonRole" + } + }, + "databases": { + "type": "array", + "items": { + "$ref": "#/definitions/NeonPostgresDatabase.NeonDatabase" + } + } + } + }, + "NeonPostgresDatabase.NeonDatabase": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "owner": { "type": "string" } } }, - "RegionalDeployment": { + "NeonPostgresDatabase.NeonRole": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "secret": { + "type": "string" + } + } + }, + "NeonPostgresDatabaseDeploymentMetadata": { + "type": "object", + "properties": { + "reset_role_passwords": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PauseServiceReply": { + "type": "object" + }, + "RedeployReply": { + "type": "object", + "properties": { + "deployment": { + "$ref": "#/definitions/Deployment", + "title": "The entity updated" + } + } + }, + "RedeployRequest.Info": { + "type": "object", + "properties": { + "deployment_group": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "use_cache": { + "type": "boolean" + } + } + }, + "ResumeServiceReply": { + "type": "object" + }, + "Service": { "type": "object", "properties": { "id": { @@ -10111,10 +11217,6 @@ "type": "string", "format": "date-time" }, - "allocated_at": { - "type": "string", - "format": "date-time" - }, "started_at": { "type": "string", "format": "date-time" @@ -10123,30 +11225,32 @@ "type": "string", "format": "date-time" }, - "terminated_at": { + "paused_at": { "type": "string", "format": "date-time" }, - "organization_id": { - "type": "string" + "resumed_at": { + "type": "string", + "format": "date-time" }, - "app_id": { - "type": "string" + "terminated_at": { + "type": "string", + "format": "date-time" }, - "service_id": { + "name": { "type": "string" }, - "region": { - "type": "string" + "type": { + "$ref": "#/definitions/Service.Type" }, - "parent_id": { + "organization_id": { "type": "string" }, - "child_id": { + "app_id": { "type": "string" }, "status": { - "$ref": "#/definitions/RegionalDeployment.Status" + "$ref": "#/definitions/Service.Status" }, "messages": { "type": "array", @@ -10154,120 +11258,48 @@ "type": "string" } }, - "definition": { - "$ref": "#/definitions/RegionalDeploymentDefinition" - }, - "datacenters": { - "type": "array", - "items": { - "type": "string" - } - }, - "metadata": { - "$ref": "#/definitions/RegionalDeploymentMetadata" - }, - "provisioning_info": { - "$ref": "#/definitions/DeploymentProvisioningInfo" - }, "version": { "type": "string", "format": "uint64" }, - "deployment_group": { - "type": "string", - "title": "Legacy stuff" + "active_deployment_id": { + "type": "string" }, - "deployment_id": { + "latest_deployment_id": { "type": "string" + }, + "state": { + "$ref": "#/definitions/ServiceState", + "title": "Legacy stuff" } } }, - "RegionalDeployment.Status": { + "Service.Status": { "type": "string", "enum": [ - "PENDING", - "PROVISIONING", - "SCHEDULED", - "CANCELING", - "CANCELED", - "ALLOCATING", "STARTING", "HEALTHY", "DEGRADED", "UNHEALTHY", - "STOPPING", - "STOPPED", - "ERRORING", - "ERROR" + "DELETING", + "DELETED", + "PAUSING", + "PAUSED", + "RESUMING" ], - "default": "PENDING" - }, - "RegionalDeploymentDefinition": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "type": { - "$ref": "#/definitions/RegionalDeploymentDefinition.Type" - }, - "routes": { - "type": "array", - "items": { - "$ref": "#/definitions/Route" - } - }, - "ports": { - "type": "array", - "items": { - "$ref": "#/definitions/Port" - } - }, - "env": { - "type": "array", - "items": { - "$ref": "#/definitions/Env" - } - }, - "region": { - "type": "string" - }, - "scaling": { - "$ref": "#/definitions/Scaling" - }, - "instance_type": { - "type": "string" - }, - "deployment_group": { - "type": "string" - }, - "health_checks": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentHealthCheck" - } - }, - "skip_cache": { - "type": "boolean" - }, - "docker": { - "$ref": "#/definitions/DockerSource" - }, - "git": { - "$ref": "#/definitions/GitSource" - } - } + "default": "STARTING" }, - "RegionalDeploymentDefinition.Type": { + "Service.Type": { "type": "string", "enum": [ - "INVALID", + "INVALID_TYPE", "WEB", - "WORKER" + "WORKER", + "DATABASE" ], - "default": "INVALID" + "default": "INVALID_TYPE" }, - "RegionalDeploymentEvent": { + "ServiceEvent": { "type": "object", "properties": { "id": { @@ -10280,7 +11312,7 @@ "organization_id": { "type": "string" }, - "regional_deployment_id": { + "service_id": { "type": "string" }, "type": { @@ -10294,25 +11326,34 @@ } } }, - "RegionalDeploymentListItem": { + "ServiceListItem": { "type": "object", "properties": { "id": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" + "name": { + "type": "string" + }, + "type": { + "$ref": "#/definitions/Service.Type" + }, + "organization_id": { + "type": "string" + }, + "app_id": { + "type": "string" }, "updated_at": { "type": "string", "format": "date-time" }, - "region": { - "type": "string" + "created_at": { + "type": "string", + "format": "date-time" }, "status": { - "$ref": "#/definitions/RegionalDeployment.Status" + "$ref": "#/definitions/Service.Status" }, "messages": { "type": "array", @@ -10320,83 +11361,121 @@ "type": "string" } }, - "definition": { - "$ref": "#/definitions/RegionalDeploymentDefinition" + "version": { + "type": "string", + "format": "uint64", + "title": "A version updated whenever this state changes (useful for caching)" + }, + "state": { + "$ref": "#/definitions/ServiceState" + }, + "active_deployment_id": { + "type": "string" + }, + "latest_deployment_id": { + "type": "string" } } }, - "RegionalDeploymentMetadata": { + "ServiceState": { "type": "object", "properties": { - "runtime_job_id": { - "type": "string" + "desired_deployment": { + "$ref": "#/definitions/DesiredDeployment" + }, + "auto_release": { + "$ref": "#/definitions/AutoRelease" } } }, - "Route": { + "TCPHealthCheck": { "type": "object", "properties": { "port": { "type": "integer", - "format": "int64" - }, - "path": { - "type": "string" + "format": "int64", + "title": "The port to use to perform the health check, must be declared in the ports section" } } }, - "Scaling": { + "TriggerDeploymentMetadata": { "type": "object", "properties": { - "min": { - "type": "integer", - "format": "int64" + "type": { + "$ref": "#/definitions/TriggerDeploymentMetadata.TriggerType" }, - "max": { - "type": "integer", - "format": "int64" + "actor": { + "$ref": "#/definitions/TriggerDeploymentMetadata.ActorType" + }, + "git": { + "$ref": "#/definitions/GitDeploymentMetadata" } } }, - "ConfirmPaymentAuthorizationReply": { + "TriggerDeploymentMetadata.ActorType": { + "type": "string", + "enum": [ + "UNKNOWN_ACTOR", + "USER", + "SYSTEM" + ], + "default": "UNKNOWN_ACTOR" + }, + "TriggerDeploymentMetadata.TriggerType": { + "type": "string", + "enum": [ + "UNKNOWN_TYPE", + "GIT", + "RESUME" + ], + "default": "UNKNOWN_TYPE" + }, + "UpdateService": { "type": "object", "properties": { - "payment_method": { - "$ref": "#/definitions/PaymentMethod" + "definition": { + "$ref": "#/definitions/DeploymentDefinition" + }, + "metadata": { + "$ref": "#/definitions/DeploymentMetadata" } } }, - "CreatePaymentAuthorizationReply": { + "UpdateServiceReply": { "type": "object", "properties": { - "payment_method": { - "$ref": "#/definitions/PaymentMethod" + "service": { + "$ref": "#/definitions/Service", + "title": "The entity updated" } } }, - "CreatePaymentAuthorizationRequest": { - "type": "object" - }, - "DeletePaymentMethodReply": { - "type": "object" - }, - "GetPaymentMethodReply": { + "AppUsage": { "type": "object", "properties": { - "payment_method": { - "$ref": "#/definitions/PaymentMethod" + "app_id": { + "type": "string" + }, + "app_name": { + "type": "string" + }, + "services": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceUsage" + } } } }, - "ListPaymentMethodsReply": { + "GetOrganizationUsageDetailsReply": { "type": "object", "properties": { - "payment_methods": { + "usage_details": { "type": "array", "items": { - "$ref": "#/definitions/PaymentMethod" + "$ref": "#/definitions/UsageDetails" }, - "title": "The collection of payment methods" + "title": "The collection of usage instances" }, "limit": { "type": "integer", @@ -10412,287 +11491,252 @@ "type": "integer", "format": "int64", "title": "The total number of items" + }, + "order": { + "type": "string", + "title": "The order in the request" } } }, - "PaymentMethod": { + "GetOrganizationUsageReply": { "type": "object", "properties": { - "id": { - "type": "string" - }, - "created_at": { + "usage": { + "$ref": "#/definitions/Usage", + "title": "The computed usage of instances per month" + } + } + }, + "InstanceUsage": { + "type": "object", + "properties": { + "duration_seconds": { + "type": "integer", + "format": "int64" + } + } + }, + "PeriodUsage": { + "type": "object", + "properties": { + "starting_time": { "type": "string", "format": "date-time" }, - "updated_at": { + "ending_time": { "type": "string", "format": "date-time" }, - "version": { - "type": "string", - "format": "uint64" - }, - "organization_id": { + "apps": { + "type": "array", + "items": { + "$ref": "#/definitions/AppUsage" + } + } + } + }, + "RegionUsage": { + "type": "object", + "properties": { + "instances": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/InstanceUsage" + } + } + } + }, + "ServiceUsage": { + "type": "object", + "properties": { + "service_id": { "type": "string" }, - "type": { + "service_name": { "type": "string" }, - "provider": { + "regions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/RegionUsage" + } + } + } + }, + "Usage": { + "type": "object", + "properties": { + "organization_id": { "type": "string" }, - "status": { - "$ref": "#/definitions/PaymentMethod.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" + "periods": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/PeriodUsage" } - }, - "stripe_payment_method_id": { + } + } + }, + "UsageDetails": { + "type": "object", + "properties": { + "organization_id": { "type": "string" }, - "authorization_verified_at": { - "type": "string", - "format": "date-time" - }, - "authorization_canceled_at": { - "type": "string", - "format": "date-time" - }, - "authorization_stripe_payment_intent_id": { + "instance_id": { "type": "string" }, - "authorization_stripe_payment_intent_client_secret": { + "app_id": { "type": "string" }, - "card_brand": { + "app_name": { "type": "string" }, - "card_country": { + "service_id": { "type": "string" }, - "card_funding": { + "service_name": { "type": "string" }, - "card_fingerprint": { + "regional_deployment_id": { "type": "string" }, - "card_last_digits": { + "region": { "type": "string" }, - "card_expiration_month": { - "type": "integer", - "format": "int64" - }, - "card_expiration_year": { - "type": "integer", - "format": "int64" - } - } - }, - "PaymentMethod.Status": { - "type": "string", - "enum": [ - "INVALID", - "CREATED", - "AUTHORIZED", - "DECLINED", - "CANCELED", - "EXPIRED", - "UNCHECKED" - ], - "default": "INVALID" - }, - "ListOrganizationMembersReply": { - "type": "object", - "properties": { - "members": { - "type": "array", - "items": { - "$ref": "#/definitions/OrganizationMember" - }, - "title": "The collection of organization members" - }, - "limit": { - "type": "integer", - "format": "int64", - "title": "The limit in the request" - }, - "offset": { - "type": "integer", - "format": "int64", - "title": "The offset in the request" - }, - "count": { - "type": "integer", - "format": "int64", - "title": "The total number of items" - } - } - }, - "Organization.Status": { - "type": "string", - "enum": [ - "WARNING", - "LOCKED", - "ACTIVE", - "DEACTIVATING", - "DEACTIVATED", - "DELETING", - "DELETED" - ], - "default": "WARNING" - }, - "OrganizationMember": { - "type": "object", - "properties": { - "id": { + "deployment_id": { "type": "string" }, - "organization_id": { + "instance_type": { "type": "string" }, - "user_id": { - "type": "string" + "duration_seconds": { + "type": "integer", + "format": "int64" }, - "joined_at": { + "started_at": { "type": "string", "format": "date-time" }, - "role": { - "$ref": "#/definitions/UserRole.Role" - }, - "status": { - "$ref": "#/definitions/OrganizationMember.Status" - }, - "user": { - "$ref": "#/definitions/PublicUser" - }, - "organization": { - "$ref": "#/definitions/PublicOrganization" + "terminated_at": { + "type": "string", + "format": "date-time" } } }, - "OrganizationMember.Status": { - "type": "string", - "enum": [ - "INVALID", - "ACTIVE", - "DELETED" - ], - "default": "INVALID" - }, - "Plan": { - "type": "string", - "enum": [ - "hobby", - "starter", - "startup", - "business", - "enterprise", - "internal", - "hobby23", - "no_plan" - ], - "default": "hobby" - }, - "PublicOrganization": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, + "CreateDomain": { + "type": "object", + "properties": { "name": { "type": "string" }, - "plan": { - "$ref": "#/definitions/Plan" + "type": { + "$ref": "#/definitions/Domain.Type" }, - "status": { - "$ref": "#/definitions/Organization.Status" + "app_id": { + "type": "string", + "title": "to auto-attach to an app. Optional" } } }, - "PublicUser": { + "CreateDomainReply": { + "type": "object", + "properties": { + "domain": { + "$ref": "#/definitions/Domain" + } + } + }, + "DeleteDomainReply": { + "type": "object" + }, + "Domain": { "type": "object", "properties": { "id": { "type": "string" }, - "email": { + "organization_id": { "type": "string" }, "name": { "type": "string" }, - "avatar_url": { + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "status": { + "$ref": "#/definitions/Domain.Status" + }, + "type": { + "$ref": "#/definitions/Domain.Type" + }, + "app_id": { "type": "string" }, - "github_id": { + "deployment_group": { "type": "string" }, - "github_user": { + "verified_at": { + "type": "string", + "format": "date-time" + }, + "intended_cname": { "type": "string" + }, + "messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "version": { + "type": "string", + "format": "uint64" } } }, - "RemoveOrganizationMemberReply": { - "type": "object", - "properties": { - "member": { - "$ref": "#/definitions/OrganizationMember" - } - } - }, - "UserRole.Role": { + "Domain.Status": { "type": "string", "enum": [ - "INVALID", - "OWNER" + "PENDING", + "ACTIVE", + "ERROR", + "DELETING", + "DELETED" ], - "default": "INVALID" - }, - "CreateOrganizationInvitationReply": { - "type": "object", - "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation", - "title": "The organization invitation sent" - } - } - }, - "CreateOrganizationInvitationRequest": { - "type": "object", - "properties": { - "email": { - "type": "string", - "title": "The email of the person to invite" - } - } + "default": "PENDING" }, - "DeleteOrganizationInvitationReply": { - "type": "object" + "Domain.Type": { + "type": "string", + "enum": [ + "AUTOASSIGNED", + "CUSTOM" + ], + "default": "AUTOASSIGNED", + "title": "- AUTOASSIGNED: Domain like -.koyeb.app" }, - "GetOrganizationInvitationReply": { + "GetDomainReply": { "type": "object", "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation" + "domain": { + "$ref": "#/definitions/Domain" } } }, - "ListOrganizationInvitationsReply": { + "ListDomainsReply": { "type": "object", "properties": { - "invitations": { + "domains": { "type": "array", "items": { - "$ref": "#/definitions/OrganizationInvitation" - }, - "title": "The collection of organization invitations" + "$ref": "#/definitions/Domain" + } }, "limit": { "type": "integer", @@ -10711,269 +11755,138 @@ } } }, - "OrganizationInvitation": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "email": { - "type": "string" - }, - "role": { - "$ref": "#/definitions/UserRole.Role" - }, - "status": { - "$ref": "#/definitions/OrganizationInvitation.Status" - }, - "expires_at": { - "type": "string", - "format": "date-time" - }, - "organization_id": { - "type": "string" - }, - "organization": { - "$ref": "#/definitions/PublicOrganization" - }, - "invitee_id": { - "type": "string" - }, - "invitee": { - "$ref": "#/definitions/PublicUser" - }, - "inviter_id": { - "type": "string" - }, - "inviter": { - "$ref": "#/definitions/PublicUser" - } - } - }, - "OrganizationInvitation.Status": { - "type": "string", - "enum": [ - "INVALID", - "PENDING", - "ACCEPTED", - "REFUSED", - "EXPIRED" - ], - "default": "INVALID" + "RefreshDomainStatusReply": { + "type": "object" }, - "ResendOrganizationInvitationReply": { + "UpdateDomain": { "type": "object", "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation", - "title": "The organization invitation resent" + "app_id": { + "type": "string", + "title": "To attach or detach from an app" } } }, - "GetSubscriptionReply": { + "UpdateDomainReply": { "type": "object", "properties": { - "subscription": { - "$ref": "#/definitions/Subscription" + "domain": { + "$ref": "#/definitions/Domain" } } }, - "Subscription": { + "App": { "type": "object", "properties": { "id": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "version": { - "type": "string", - "format": "uint64" - }, - "organization_id": { - "type": "string" - }, - "stripe_subscription_id": { + "name": { "type": "string" }, - "status": { - "$ref": "#/definitions/Subscription.Status" - }, - "messages": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_pending_update": { - "type": "boolean" - }, - "stripe_pending_invoice_id": { + "organization_id": { "type": "string" }, - "terminate_at": { - "type": "string", - "format": "date-time" - }, - "canceled_at": { + "created_at": { "type": "string", "format": "date-time" }, - "terminated_at": { + "updated_at": { "type": "string", "format": "date-time" }, - "current_period_start": { + "started_at": { "type": "string", "format": "date-time" }, - "current_period_end": { + "succeeded_at": { "type": "string", "format": "date-time" }, - "currency": { - "type": "string" - }, - "amount_payable": { - "type": "string", - "format": "int64" - }, - "amount_paid": { - "type": "string", - "format": "int64" - }, - "amount_remaining": { - "type": "string", - "format": "int64" - }, - "payment_failure": { - "$ref": "#/definitions/Subscription.PaymentFailure" - } - } - }, - "Subscription.PaymentFailure": { - "type": "object", - "properties": { - "failed_at": { + "paused_at": { "type": "string", "format": "date-time" }, - "next_attempt": { + "resumed_at": { "type": "string", "format": "date-time" }, - "attempt_count": { + "terminated_at": { "type": "string", - "format": "int64" - }, - "error_code": { - "type": "string" - }, - "error_reason": { - "type": "string" - }, - "error_type": { - "type": "string" - }, - "error_message": { - "type": "string" + "format": "date-time" }, - "payment_method_required": { - "type": "boolean" + "status": { + "$ref": "#/definitions/App.Status" }, - "redirect_url": { - "type": "string" + "messages": { + "type": "array", + "items": { + "type": "string" + } }, - "stripe_sdk": { - "$ref": "#/definitions/Subscription.PaymentFailure.StripeSDK" - } - } - }, - "Subscription.PaymentFailure.StripeSDK": { - "type": "object", - "properties": { - "client_secret_key": { - "type": "string" + "version": { + "type": "string", + "format": "uint64" }, - "raw_json": { - "type": "string" + "domains": { + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } } } }, - "Subscription.Status": { + "App.Status": { "type": "string", "enum": [ - "INVALID", - "CREATED", - "ACTIVE", - "WARNING", - "URGENT", - "CANCELING", - "CANCELED", - "TERMINATING", - "TERMINATED" + "STARTING", + "HEALTHY", + "DEGRADED", + "UNHEALTHY", + "DELETING", + "DELETED", + "PAUSING", + "PAUSED", + "RESUMING" ], - "default": "INVALID" - }, - "ConfirmOrganizationActionReply": { - "type": "object" + "default": "STARTING" }, - "CreateCredential": { + "AppEvent": { "type": "object", "properties": { - "name": { - "type": "string", - "title": "Credential name" + "id": { + "type": "string" }, - "description": { + "when": { "type": "string", - "title": "Credential description" + "format": "date-time" + }, + "organization_id": { + "type": "string" + }, + "app_id": { + "type": "string" }, "type": { - "$ref": "#/definitions/Credential.Type", - "title": "Credential type" + "type": "string" }, - "organization_id": { - "type": "string", - "title": "Organization id for user credential" - } - } - }, - "CreateCredentialReply": { - "type": "object", - "properties": { - "credential": { - "$ref": "#/definitions/Credential" + "message": { + "type": "string" + }, + "metadata": { + "type": "object" } } }, - "Credential": { + "AppListItem": { "type": "object", "properties": { "id": { "type": "string" }, - "type": { - "$ref": "#/definitions/Credential.Type" - }, "name": { "type": "string" }, - "token": { - "type": "string" - }, - "description": { - "type": "string" - }, - "user_id": { - "type": "string" - }, "organization_id": { "type": "string" }, @@ -10984,459 +11897,612 @@ "created_at": { "type": "string", "format": "date-time" + }, + "domains": { + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } + }, + "status": { + "$ref": "#/definitions/App.Status" + }, + "messages": { + "type": "array", + "items": { + "type": "string" + } } } }, - "Credential.Type": { - "type": "string", - "enum": [ - "INVALID", - "USER", - "ORGANIZATION" - ], - "default": "INVALID" + "CreateApp": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + } }, - "DeleteCredentialReply": { + "CreateAppReply": { + "type": "object", + "properties": { + "app": { + "$ref": "#/definitions/App", + "title": "The entity created" + } + } + }, + "DeleteAppReply": { "type": "object" }, - "GetCredentialReply": { + "GetAppReply": { "type": "object", "properties": { - "credential": { - "$ref": "#/definitions/Credential" + "app": { + "$ref": "#/definitions/App", + "title": "The App retrieved" } } }, - "ListCredentialsReply": { + "ListAppEventsReply": { "type": "object", "properties": { - "credentials": { + "events": { "type": "array", "items": { - "$ref": "#/definitions/Credential" - } + "$ref": "#/definitions/AppEvent" + }, + "title": "The collection of events" }, "limit": { "type": "integer", - "format": "int64" + "format": "int64", + "title": "The limit in the request" }, "offset": { "type": "integer", - "format": "int64" + "format": "int64", + "title": "The offset in the request" }, "count": { "type": "integer", - "format": "int64" + "format": "int64", + "title": "The total number of items" + }, + "order": { + "type": "string", + "title": "The order in the request" } } }, - "UpdateCredentialReply": { + "ListAppsReply": { "type": "object", "properties": { - "credential": { - "$ref": "#/definitions/Credential" + "apps": { + "type": "array", + "items": { + "$ref": "#/definitions/AppListItem" + } + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" + }, + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" + }, + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" } } }, - "DeleteUserReply": { + "PauseAppReply": { + "type": "object" + }, + "ResumeAppReply": { + "type": "object" + }, + "UpdateApp": { "type": "object", "properties": { - "user": { - "$ref": "#/definitions/User" + "name": { + "type": "string" } } }, - "User": { + "UpdateAppReply": { + "type": "object", + "properties": { + "app": { + "$ref": "#/definitions/App", + "title": "The entity updated" + } + } + }, + "AzureContainerRegistryConfiguration": { "type": "object", - "example": { - "id": "78352123-a06f-4ec2-81ed-27a056725385", - "email": "john@snow.com", - "name": "John Snow", - "avatar_url": "https://www.gravatar.com/avatar/00000000000000000000000000000000", - "is_admin": false, - "is_test": true, - "two_factor_authentication": false, - "last_login": "0001-01-01T00:00:00Z", - "last_login_id": "10.1.1.1", - "updated_at": "0001-01-01T00:00:00Z", - "created_at": "0001-01-01T00:00:00Z", - "newsletter_subscribed": true, - "email_validated": true - }, "properties": { - "id": { + "registry_name": { "type": "string" }, - "email": { + "username": { "type": "string" }, - "avatar_url": { + "password": { + "type": "string" + } + } + }, + "CreateSecret": { + "type": "object", + "properties": { + "name": { "type": "string" }, - "two_factor_authentication": { - "type": "boolean" - }, - "last_login": { - "type": "string", - "format": "date-time" + "type": { + "$ref": "#/definitions/SecretType" }, - "last_login_ip": { + "value": { "type": "string" }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "created_at": { - "type": "string", - "format": "date-time" + "docker_hub_registry": { + "$ref": "#/definitions/DockerHubRegistryConfiguration" }, - "newsletter_subscribed": { - "type": "boolean" + "private_registry": { + "$ref": "#/definitions/PrivateRegistryConfiguration" }, - "github_id": { - "type": "string" + "digital_ocean_registry": { + "$ref": "#/definitions/DigitalOceanRegistryConfiguration" }, - "github_user": { - "type": "string" + "github_registry": { + "$ref": "#/definitions/GitHubRegistryConfiguration" }, - "flags": { - "type": "array", - "items": { - "$ref": "#/definitions/UserFlags" - } + "gitlab_registry": { + "$ref": "#/definitions/GitLabRegistryConfiguration" }, - "name": { - "type": "string" + "gcp_container_registry": { + "$ref": "#/definitions/GCPContainerRegistryConfiguration" }, - "email_validated": { - "type": "boolean" + "azure_container_registry": { + "$ref": "#/definitions/AzureContainerRegistryConfiguration" } - }, - "title": "Represent a User" - }, - "UserFlags": { - "type": "string", - "enum": [ - "ADMIN", - "TEST", - "RESTRICTED", - "ACTIVE", - "BETA" - ], - "default": "ADMIN", - "title": "- ADMIN: A user is an admin user\n - TEST: A user is a test user\n - RESTRICTED: Whether this account as restricted access\n - ACTIVE: Whether this account is active\n - BETA: Account in beta program" + } }, - "LoginReply": { + "CreateSecretReply": { "type": "object", "properties": { - "token": { - "$ref": "#/definitions/Token" + "secret": { + "$ref": "#/definitions/Secret" } } }, - "LoginRequest": { + "DatabaseRolePassword": { "type": "object", - "example": { - "email": "john@snow.com", - "password": "..." - }, "properties": { - "email": { - "type": "string", - "title": "User email" + "username": { + "type": "string" }, "password": { - "type": "string", - "title": "User password" - }, - "organization_id": { - "type": "string", - "title": "(Optional) Login into this organization" + "type": "string" } } }, - "LogoutReply": { + "DeleteSecretReply": { "type": "object" }, - "Token": { + "DigitalOceanRegistryConfiguration": { "type": "object", - "example": { - "id": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", - "expires": "2022-09-08T14:00:00Z", - "user_id": "996d7822-6b58-11e9-956f-32001b70f000", - "organization_id": "9f33b2c6-6b58-11e9-883c-32001b70f000" - }, "properties": { - "id": { + "username": { "type": "string" }, - "user_id": { + "password": { "type": "string" - }, - "organization_id": { + } + } + }, + "DockerHubRegistryConfiguration": { + "type": "object", + "properties": { + "username": { "type": "string" }, - "expires_at": { - "type": "string", - "format": "date-time" + "password": { + "type": "string" } } }, - "AcceptOrganizationInvitationReply": { + "GCPContainerRegistryConfiguration": { "type": "object", "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation", - "title": "The organization invitation accepted" + "keyfile_content": { + "type": "string" + }, + "url": { + "type": "string" } } }, - "Action": { - "type": "string", - "enum": [ - "signin", - "signup", - "register" - ], - "default": "signin" + "GetSecretReply": { + "type": "object", + "properties": { + "secret": { + "$ref": "#/definitions/Secret" + } + } }, - "CannyAuthReply": { + "GitHubRegistryConfiguration": { "type": "object", "properties": { - "token": { + "username": { + "type": "string" + }, + "password": { "type": "string" } } }, - "CannyAuthRequest": { - "type": "object" - }, - "CreateAccountRequest": { + "GitLabRegistryConfiguration": { "type": "object", - "example": { - "email": "john@snow.com", - "password": "..." - }, "properties": { - "email": { + "username": { "type": "string" }, "password": { "type": "string" + } + } + }, + "ListSecretsReply": { + "type": "object", + "properties": { + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } }, - "name": { + "limit": { + "type": "integer", + "format": "int64" + }, + "offset": { + "type": "integer", + "format": "int64" + }, + "count": { + "type": "integer", + "format": "int64" + } + } + }, + "PrivateRegistryConfiguration": { + "type": "object", + "properties": { + "username": { "type": "string" }, - "captcha": { + "password": { + "type": "string" + }, + "url": { "type": "string" } - }, - "description": "Create new account", - "title": "Create new account", - "required": [ - "email", - "password" - ] + } }, - "CreateOrganizationReply": { + "RevealSecretReply": { "type": "object", "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } + "value": {} } }, - "CreateOrganizationRequest": { + "Secret": { "type": "object", "properties": { + "id": { + "type": "string" + }, "name": { "type": "string" + }, + "organization_id": { + "type": "string" + }, + "type": { + "$ref": "#/definitions/SecretType" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "value": { + "type": "string" + }, + "docker_hub_registry": { + "$ref": "#/definitions/DockerHubRegistryConfiguration" + }, + "private_registry": { + "$ref": "#/definitions/PrivateRegistryConfiguration" + }, + "digital_ocean_registry": { + "$ref": "#/definitions/DigitalOceanRegistryConfiguration" + }, + "github_registry": { + "$ref": "#/definitions/GitHubRegistryConfiguration" + }, + "gitlab_registry": { + "$ref": "#/definitions/GitLabRegistryConfiguration" + }, + "gcp_container_registry": { + "$ref": "#/definitions/GCPContainerRegistryConfiguration" + }, + "azure_container_registry": { + "$ref": "#/definitions/AzureContainerRegistryConfiguration" + }, + "database_role_password": { + "$ref": "#/definitions/DatabaseRolePassword" } } }, - "DeactivateOrganizationReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } + "SecretType": { + "type": "string", + "enum": [ + "SIMPLE", + "REGISTRY", + "MANAGED" + ], + "default": "SIMPLE" }, - "DeclineOrganizationInvitationReply": { + "UpdateSecretReply": { "type": "object", "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation", - "title": "The organization invitation declined" + "secret": { + "$ref": "#/definitions/Secret" } } }, - "DeleteOrganizationReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } + "CancelDeploymentReply": { + "type": "object" }, - "DiscourseAuthReply": { + "DeploymentEvent": { "type": "object", "properties": { - "sso": { + "id": { "type": "string" }, - "sig": { + "when": { + "type": "string", + "format": "date-time" + }, + "organization_id": { "type": "string" - } - } - }, - "DiscourseAuthRequest": { - "type": "object", - "properties": { - "payload": { + }, + "deployment_id": { "type": "string" }, - "sig": { + "type": { + "type": "string" + }, + "message": { "type": "string" + }, + "metadata": { + "type": "object" } } }, - "GetGithubInstallationReply": { + "DeploymentListItem": { "type": "object", "properties": { - "installation_id": { + "id": { "type": "string" }, - "installation_url": { - "type": "string" + "created_at": { + "type": "string", + "format": "date-time" }, - "avatar_url": { - "type": "string" + "updated_at": { + "type": "string", + "format": "date-time" }, - "status": { - "$ref": "#/definitions/kgitproxy.GithubInstallation.Status" + "allocated_at": { + "type": "string", + "format": "date-time" }, - "installed_at": { + "started_at": { "type": "string", "format": "date-time" }, - "suspended_at": { + "succeeded_at": { "type": "string", "format": "date-time" }, - "indexing_status": { - "$ref": "#/definitions/kgitproxy.IndexingStatus" + "terminated_at": { + "type": "string", + "format": "date-time" }, - "indexed_repositories": { - "type": "integer", - "format": "int64" + "organization_id": { + "type": "string" }, - "total_repositories": { - "type": "integer", - "format": "int64" - } - } - }, - "GetOAuthOptionsReply": { - "type": "object", - "properties": { - "oauth_providers": { + "app_id": { + "type": "string" + }, + "service_id": { + "type": "string" + }, + "parent_id": { + "type": "string" + }, + "child_id": { + "type": "string" + }, + "status": { + "$ref": "#/definitions/Deployment.Status" + }, + "metadata": { + "$ref": "#/definitions/DeploymentMetadata" + }, + "definition": { + "$ref": "#/definitions/DeploymentDefinition" + }, + "messages": { "type": "array", "items": { - "$ref": "#/definitions/OAuthProvider" + "type": "string" } + }, + "provisioning_info": { + "$ref": "#/definitions/DeploymentProvisioningInfo" + }, + "database_info": { + "$ref": "#/definitions/DeploymentDatabaseInfo" + }, + "version": { + "type": "string", + "format": "uint64" + }, + "deployment_group": { + "type": "string" } - }, - "description": "A list of providers which you can use for single sign-on." + } }, - "GetOrganizationReply": { + "GetDeploymentReply": { "type": "object", "properties": { - "organization": { - "$ref": "#/definitions/Organization" + "deployment": { + "$ref": "#/definitions/Deployment" } } }, - "GetUserOrganizationInvitationReply": { + "ListDeploymentEventsReply": { "type": "object", "properties": { - "invitation": { - "$ref": "#/definitions/OrganizationInvitation" + "events": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentEvent" + }, + "title": "The collection of events" + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" + }, + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" + }, + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" + }, + "order": { + "type": "string", + "title": "The order in the request" } } }, - "GithubInstallationCallbackReply": { - "type": "object" - }, - "GithubInstallationCallbackRequest": { + "ListDeploymentsReply": { "type": "object", "properties": { - "installation_id": { - "type": "string" + "deployments": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentListItem" + }, + "title": "The collection of deployments" }, - "setup_action": { - "type": "string" + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" }, - "state": { - "type": "string" + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" + }, + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" } } }, - "GithubInstallationReply": { + "Env": { "type": "object", "properties": { - "app_name": { - "type": "string", - "title": "The github app name" - }, - "app_id": { - "type": "string", - "format": "int64", - "title": "The github app id" + "key": { + "type": "string" }, - "url": { - "type": "string", - "title": "The url to start the installation flow" + "value": { + "type": "string" }, - "state": { - "type": "string", - "title": "The state required by the protocol, it is only valid 10 minutes and encodes information about the type of flow" + "secret": { + "type": "string" } } }, - "GithubInstallationRequest": { + "GetRegionalDeploymentReply": { "type": "object", "properties": { - "metadata": { - "type": "string", - "title": "A small (limited to 400 characters) string of arbitrary metadata which will be encoded in the state" + "regional_deployment": { + "$ref": "#/definitions/RegionalDeployment" } } }, - "InviteUserRequest": { + "ListRegionalDeploymentEventsReply": { "type": "object", "properties": { - "email": { - "type": "string" + "events": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionalDeploymentEvent" + }, + "title": "The collection of events" + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "The limit in the request" }, - "name": { - "type": "string" + "offset": { + "type": "integer", + "format": "int64", + "title": "The offset in the request" }, - "message": { - "type": "string" + "count": { + "type": "integer", + "format": "int64", + "title": "The total number of items" + }, + "order": { + "type": "string", + "title": "The order in the request" } } }, - "ListUserOrganizationInvitationsReply": { + "ListRegionalDeploymentsReply": { "type": "object", "properties": { - "invitations": { + "regional_deployments": { "type": "array", "items": { - "$ref": "#/definitions/OrganizationInvitation" + "$ref": "#/definitions/RegionalDeploymentListItem" }, - "title": "The collection of organization invitations" + "title": "The collection of regional deployments" }, "limit": { "type": "integer", @@ -11455,424 +12521,294 @@ } } }, - "ManageReply": { + "Port": { "type": "object", "properties": { - "url": { + "port": { + "type": "integer", + "format": "int64" + }, + "protocol": { "type": "string" } } }, - "NextInvoiceReply": { - "type": "object", - "properties": { - "stripe_invoice": { - "type": "object" - } - } - }, - "OAuthCallbackReply": { - "type": "object", - "properties": { - "token": { - "$ref": "#/definitions/Token", - "title": "A jwt token to be used for session" - } - } - }, - "OAuthCallbackRequest": { + "RegionalDeployment": { "type": "object", "properties": { - "state": { + "id": { + "type": "string" + }, + "created_at": { "type": "string", - "title": "The state created at the origin of the OAuth flow" + "format": "date-time" }, - "code": { + "updated_at": { "type": "string", - "title": "The code returned by the OAuth provider" - } - } - }, - "OAuthProvider": { - "type": "object", - "properties": { - "id": { + "format": "date-time" + }, + "allocated_at": { "type": "string", - "title": "The name of the provider (.e.g github, google)" + "format": "date-time" }, - "url": { + "started_at": { "type": "string", - "title": "The URL to call to initiate the OAuth flow" + "format": "date-time" }, - "state": { + "succeeded_at": { "type": "string", - "title": "The OAuth state required by the protocol, it is only valid 10 minutes and encodes information about the type of flow" - } - } - }, - "Organization": { - "type": "object", - "properties": { - "id": { - "type": "string" + "format": "date-time" }, - "address1": { - "type": "string" + "terminated_at": { + "type": "string", + "format": "date-time" }, - "address2": { + "organization_id": { "type": "string" }, - "city": { + "app_id": { "type": "string" }, - "postal_code": { + "service_id": { "type": "string" }, - "state": { + "region": { "type": "string" }, - "country": { + "parent_id": { "type": "string" }, - "company": { - "type": "boolean" - }, - "vat_number": { + "child_id": { "type": "string" }, - "billing_name": { - "type": "string" + "status": { + "$ref": "#/definitions/RegionalDeployment.Status" }, - "billing_email": { - "type": "string" + "messages": { + "type": "array", + "items": { + "type": "string" + } }, - "name": { - "type": "string" + "definition": { + "$ref": "#/definitions/RegionalDeploymentDefinition" }, - "plan": { - "$ref": "#/definitions/Plan" + "datacenters": { + "type": "array", + "items": { + "type": "string" + } }, - "plan_updated_at": { - "type": "string", - "format": "date-time" + "metadata": { + "$ref": "#/definitions/RegionalDeploymentMetadata" }, - "has_payment_method": { - "type": "boolean" + "provisioning_info": { + "$ref": "#/definitions/DeploymentProvisioningInfo" }, - "subscription_id": { - "type": "string" + "version": { + "type": "string", + "format": "uint64" }, - "current_subscription_id": { - "type": "string" + "deployment_group": { + "type": "string", + "title": "Legacy stuff" }, - "latest_subscription_id": { + "deployment_id": { "type": "string" - }, - "signup_qualification": { - "type": "object" - }, - "status": { - "$ref": "#/definitions/Organization.Status" - }, - "status_message": { - "$ref": "#/definitions/OrganizationDetailedStatus" - }, - "deactivation_reason": { - "$ref": "#/definitions/Organization.DeactivationReason" - }, - "verified": { - "type": "boolean" - }, - "qualifies_for_hobby23": { - "type": "boolean" } - }, - "title": "Represent an Organization" - }, - "Organization.DeactivationReason": { - "type": "string", - "enum": [ - "INVALID", - "REQUESTED_BY_OWNER", - "SUBSCRIPTION_TERMINATION", - "LOCKED_BY_ADMIN" - ], - "default": "INVALID" + } }, - "OrganizationDetailedStatus": { + "RegionalDeployment.Status": { "type": "string", "enum": [ - "NEW", - "EMAIL_NOT_VALIDATED", - "BILLING_INFO_MISSING", - "LOCKED", - "PAYMENT_FAILURE", - "VALID", - "PENDING_VERIFICATION", - "VERIFICATION_FAILED", - "REVIEWING_ACCOUNT", - "PLAN_UPGRADE_REQUIRED" - ], - "default": "NEW" - }, - "ReactivateOrganizationReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } - }, - "ResendEmailValidationReply": { - "type": "object" - }, - "ResendEmailValidationRequest": { - "type": "object" - }, - "ResetPasswordReply": { - "type": "object" - }, - "ResetPasswordRequest": { - "type": "object", - "example": { - "email": "john@snow.com" - }, - "properties": { - "email": { - "type": "string" - } - } - }, - "UpdateOrganizationPlanReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } - }, - "UpdateOrganizationReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } + "PENDING", + "PROVISIONING", + "SCHEDULED", + "CANCELING", + "CANCELED", + "ALLOCATING", + "STARTING", + "HEALTHY", + "DEGRADED", + "UNHEALTHY", + "STOPPING", + "STOPPED", + "ERRORING", + "ERROR" + ], + "default": "PENDING" }, - "UpdatePasswordRequest": { + "RegionalDeploymentDefinition": { "type": "object", - "example": { - "id": "...", - "password": "..." - }, "properties": { - "id": { + "name": { "type": "string" }, - "password": { - "type": "string" - } - } - }, - "UpdateUserRequest.UserUpdateBody": { - "type": "object", - "properties": { - "id": { - "type": "string" + "type": { + "$ref": "#/definitions/RegionalDeploymentDefinition.Type" }, - "email": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + } + }, + "ports": { + "type": "array", + "items": { + "$ref": "#/definitions/Port" + } + }, + "env": { + "type": "array", + "items": { + "$ref": "#/definitions/Env" + } + }, + "region": { "type": "string" }, - "current_password": { + "scaling": { + "$ref": "#/definitions/Scaling" + }, + "instance_type": { "type": "string" }, - "password": { + "deployment_group": { "type": "string" }, - "newsletter_subscribed": { + "health_checks": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentHealthCheck" + } + }, + "skip_cache": { "type": "boolean" }, - "name": { - "type": "string" - } - } - }, - "UpsertSignupQualificationReply": { - "type": "object", - "properties": { - "organization": { - "$ref": "#/definitions/Organization" - } - } - }, - "UserReply": { - "type": "object", - "properties": { - "user": { - "$ref": "#/definitions/User" + "docker": { + "$ref": "#/definitions/DockerSource" + }, + "git": { + "$ref": "#/definitions/GitSource" } } }, - "Empty": { - "type": "object" - }, - "kgitproxy.GithubInstallation.Status": { + "RegionalDeploymentDefinition.Type": { "type": "string", "enum": [ "INVALID", - "INSTALLED", - "SUSPENDED", - "DELETED" + "WEB", + "WORKER" ], "default": "INVALID" }, - "kgitproxy.IndexingStatus": { - "type": "string", - "enum": [ - "INVALID_INDEXING_STATUS", - "NOT_STARTED", - "IN_PROGRESS", - "COMPLETED" - ], - "default": "INVALID_INDEXING_STATUS" - }, - "kgitproxy.Branch": { + "RegionalDeploymentEvent": { "type": "object", "properties": { "id": { "type": "string" }, + "when": { + "type": "string", + "format": "date-time" + }, "organization_id": { "type": "string" }, - "repository_id": { + "regional_deployment_id": { "type": "string" }, - "name": { + "type": { "type": "string" }, - "is_default": { - "type": "boolean" + "message": { + "type": "string" }, - "is_protected": { - "type": "boolean" + "metadata": { + "type": "object" + } + } + }, + "RegionalDeploymentListItem": { + "type": "object", + "properties": { + "id": { + "type": "string" }, - "provider": { - "$ref": "#/definitions/kgitproxy.RepositoryProvider" + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "region": { + "type": "string" + }, + "status": { + "$ref": "#/definitions/RegionalDeployment.Status" + }, + "messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "definition": { + "$ref": "#/definitions/RegionalDeploymentDefinition" } } }, - "kgitproxy.GitHubRepository": { + "RegionalDeploymentMetadata": { "type": "object", "properties": { - "github_id": { + "runtime_job_id": { "type": "string" } } }, - "kgitproxy.ListBranchesReply": { + "Route": { "type": "object", "properties": { - "branches": { - "type": "array", - "items": { - "$ref": "#/definitions/kgitproxy.Branch" - }, - "description": "The collection of branches." - }, - "limit": { - "type": "integer", - "format": "int64", - "description": "The limit in the request." - }, - "offset": { + "port": { "type": "integer", - "format": "int64", - "description": "The offset in the request." + "format": "int64" }, - "count": { - "type": "integer", - "format": "int64", - "description": "The total number of items." + "path": { + "type": "string" } } }, - "kgitproxy.ListRepositoriesReply": { + "Scaling": { "type": "object", "properties": { - "repositories": { - "type": "array", - "items": { - "$ref": "#/definitions/kgitproxy.Repository" - }, - "description": "The collection of repositories." - }, - "limit": { - "type": "integer", - "format": "int64", - "description": "The limit in the request." - }, - "offset": { + "min": { "type": "integer", - "format": "int64", - "description": "The offset in the request." + "format": "int64" }, - "count": { + "max": { "type": "integer", - "format": "int64", - "description": "The total number of items." + "format": "int64" } } }, - "kgitproxy.Repository": { + "ReviewOrganizationCapacityReply": { "type": "object", "properties": { - "id": { - "type": "string" - }, - "organization_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "url": { - "type": "string" - }, - "description": { - "type": "string" - }, - "is_private": { - "type": "boolean" - }, - "is_disabled": { + "has_capacity": { "type": "boolean" - }, - "default_branch": { - "type": "string" - }, - "provider": { - "$ref": "#/definitions/kgitproxy.RepositoryProvider" - }, - "last_push_date": { - "type": "string", - "format": "date-time" - }, - "github": { - "$ref": "#/definitions/kgitproxy.GitHubRepository" } } }, - "kgitproxy.RepositoryProvider": { - "type": "string", - "enum": [ - "INVALID_PROVIDER", - "GITHUB" - ], - "default": "INVALID_PROVIDER" - }, - "kgitproxy.ResyncOrganizationReply": { - "type": "object" + "ReviewOrganizationCapacityRequest": { + "type": "object", + "properties": { + "plan": { + "type": "string" + } + } }, "ksearch.App": { "type": "object", @@ -12037,6 +12973,120 @@ } } }, + "ExecCommandIO": { + "type": "object", + "properties": { + "data": { + "type": "string", + "format": "byte", + "description": "Data is base64 encoded" + }, + "close": { + "type": "boolean", + "description": "Indicate last data frame" + } + } + }, + "ExecCommandReply": { + "type": "object", + "properties": { + "stdout": { + "$ref": "#/definitions/ExecCommandIO" + }, + "stderr": { + "$ref": "#/definitions/ExecCommandIO" + }, + "exited": { + "type": "boolean" + }, + "exit_code": { + "type": "integer", + "format": "int32" + } + } + }, + "ExecCommandRequest.Body": { + "type": "object", + "properties": { + "command": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Command to exec. Mandatory in the first frame sent" + }, + "tty_size": { + "$ref": "#/definitions/ExecCommandRequest.TerminalSize" + }, + "stdin": { + "$ref": "#/definitions/ExecCommandIO" + } + } + }, + "ExecCommandRequest.IdType": { + "type": "string", + "enum": [ + "INVALID", + "INSTANCE_ID", + "SERVICE_ID" + ], + "default": "INVALID" + }, + "ExecCommandRequest.TerminalSize": { + "type": "object", + "properties": { + "height": { + "type": "integer", + "format": "int32" + }, + "width": { + "type": "integer", + "format": "int32" + } + } + }, + "LogEntry": { + "type": "object", + "properties": { + "msg": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "labels": { + "type": "object" + } + } + }, + "GetMetricsReply": { + "type": "object", + "properties": { + "metrics": { + "type": "array", + "items": { + "$ref": "#/definitions/GetMetricsReply.Metric" + } + } + } + }, + "MetricName": { + "type": "string", + "enum": [ + "UNKNOWN", + "CPU_TOTAL_PERCENT", + "MEM_RSS", + "HTTP_THROUGHPUT", + "HTTP_RESPONSE_TIME_50P", + "HTTP_RESPONSE_TIME_90P", + "HTTP_RESPONSE_TIME_99P", + "HTTP_RESPONSE_TIME_MAX", + "PUBLIC_DATA_TRANSFER_IN", + "PUBLIC_DATA_TRANSFER_OUT" + ], + "default": "UNKNOWN" + }, "CatalogInstance": { "type": "object", "properties": { @@ -12186,41 +13236,6 @@ } } }, - "DatacenterListItem": { - "type": "object", - "properties": { - "id": { - "type": "string", - "title": "e.g. \"par1\"" - }, - "region_id": { - "type": "string", - "title": "e.g. \"par\"" - }, - "domain": { - "type": "string", - "title": "e.g. \"all-par1.infra.prod.koyeb.com\"" - }, - "coordinates": { - "type": "array", - "items": { - "type": "string" - }, - "title": "e.g. \"8.856614\" ,\"2.352221\"?" - } - } - }, - "ListDatacentersReply": { - "type": "object", - "properties": { - "datacenters": { - "type": "array", - "items": { - "$ref": "#/definitions/DatacenterListItem" - } - } - } - }, "GetRegionReply": { "type": "object", "properties": { @@ -12332,119 +13347,40 @@ } } }, - "LogEntry": { + "DatacenterListItem": { "type": "object", "properties": { - "msg": { - "type": "string" - }, - "created_at": { + "id": { "type": "string", - "format": "date-time" + "title": "e.g. \"par1\"" }, - "labels": { - "type": "object" - } - } - }, - "ExecCommandIO": { - "type": "object", - "properties": { - "data": { + "region_id": { "type": "string", - "format": "byte", - "description": "Data is base64 encoded" - }, - "close": { - "type": "boolean", - "description": "Indicate last data frame" - } - } - }, - "ExecCommandReply": { - "type": "object", - "properties": { - "stdout": { - "$ref": "#/definitions/ExecCommandIO" - }, - "stderr": { - "$ref": "#/definitions/ExecCommandIO" + "title": "e.g. \"par\"" }, - "exited": { - "type": "boolean" + "domain": { + "type": "string", + "title": "e.g. \"all-par1.infra.prod.koyeb.com\"" }, - "exit_code": { - "type": "integer", - "format": "int32" - } - } - }, - "ExecCommandRequest.Body": { - "type": "object", - "properties": { - "command": { + "coordinates": { "type": "array", "items": { "type": "string" }, - "description": "Command to exec. Mandatory in the first frame sent" - }, - "tty_size": { - "$ref": "#/definitions/ExecCommandRequest.TerminalSize" - }, - "stdin": { - "$ref": "#/definitions/ExecCommandIO" - } - } - }, - "ExecCommandRequest.IdType": { - "type": "string", - "enum": [ - "INVALID", - "INSTANCE_ID", - "SERVICE_ID" - ], - "default": "INVALID" - }, - "ExecCommandRequest.TerminalSize": { - "type": "object", - "properties": { - "height": { - "type": "integer", - "format": "int32" - }, - "width": { - "type": "integer", - "format": "int32" + "title": "e.g. \"8.856614\" ,\"2.352221\"?" } } }, - "GetMetricsReply": { + "ListDatacentersReply": { "type": "object", "properties": { - "metrics": { + "datacenters": { "type": "array", "items": { - "$ref": "#/definitions/GetMetricsReply.Metric" + "$ref": "#/definitions/DatacenterListItem" } } } - }, - "MetricName": { - "type": "string", - "enum": [ - "UNKNOWN", - "CPU_TOTAL_PERCENT", - "MEM_RSS", - "HTTP_THROUGHPUT", - "HTTP_RESPONSE_TIME_50P", - "HTTP_RESPONSE_TIME_90P", - "HTTP_RESPONSE_TIME_99P", - "HTTP_RESPONSE_TIME_MAX", - "PUBLIC_DATA_TRANSFER_IN", - "PUBLIC_DATA_TRANSFER_OUT" - ], - "default": "UNKNOWN" } }, "securityDefinitions": {