openapi: 3.2.0 info: title: Koyeb Rest Organization Quotas API description: The Koyeb API allows you to interact with the Koyeb platform in a simple, programmatic way using conventional HTTP requests. version: 1.0.0 servers: - url: https://app.koyeb.com security: - Bearer: [] tags: - name: Organization Quotas paths: /v1/organizations/{organization_id}/quotas: get: operationId: GetQuotas responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/GetQuotasReply' '400': description: Validation error content: application/json: schema: $ref: '#/components/schemas/ErrorWithFields' '401': description: Returned when the token is not valid. content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Returned when the user does not have permission to access the resource. content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Returned when the resource does not exist. content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Returned in case of server error. content: application/json: schema: $ref: '#/components/schemas/Error' '503': description: Service is unavailable. content: application/json: schema: $ref: '#/components/schemas/Error' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/google.rpc.Status' parameters: - name: organization_id in: path required: true schema: type: string tags: - Organization Quotas summary: Get quotas x-summary-source: derived components: schemas: google.protobuf.Any: type: object properties: '@type': type: string description: "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics." additionalProperties: {} description: "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }" GetQuotasReply: type: object properties: quotas: $ref: '#/components/schemas/Quotas' ScaleToZeroQuotas: type: object properties: is_deep_sleep_enabled: type: boolean title: deep sleep limits deep_sleep_idle_delay_min: type: integer format: int64 deep_sleep_idle_delay_max: type: integer format: int64 is_light_sleep_enabled: type: boolean title: light sleep limits light_sleep_idle_delay_min: type: integer format: int64 light_sleep_idle_delay_max: type: integer format: int64 DomainLoadBalancerQuotas: type: object properties: max_koyeb: type: integer format: int64 LifecycleQuotas: type: object properties: delete_after_sleep_min: type: integer format: int64 title: delete after sleep limits delete_after_sleep_max: type: integer format: int64 delete_after_create_min: type: integer format: int64 title: delete after create limits delete_after_create_max: type: integer format: int64 Quotas: type: object properties: apps: type: string format: int64 services: type: string format: int64 domains: type: string format: int64 title: Deprecated, use custom_domains instead 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 persistent_volumes_by_region: type: object additionalProperties: $ref: '#/components/schemas/PersistentVolumeQuotas' custom_domains: type: string format: int64 domains_load_balancer: $ref: '#/components/schemas/DomainLoadBalancerQuotas' metrics_retention: type: integer format: int32 title: Time in days logs_retention: type: integer format: int32 title: Time in days access_reserved_subdomains: type: array items: type: string title: The mapping between reserved_subdomain names and their value is in the code proxy_ports: type: integer format: int64 scale_to_zero: $ref: '#/components/schemas/ScaleToZeroQuotas' archives: type: string format: int64 archive_max_size_mb: type: string format: int64 lifecycle: $ref: '#/components/schemas/LifecycleQuotas' max_projects: type: string format: int64 instance_snapshots: $ref: '#/components/schemas/InstanceSnapshotQuotas' ErrorWithFields: type: object properties: status: type: integer format: int32 code: type: string message: type: string fields: type: array items: $ref: '#/components/schemas/ErrorField' InstanceSnapshotQuotas: type: object properties: filesystem: type: integer format: int64 full: type: integer format: int64 Error: type: object properties: status: type: integer format: int32 code: type: string message: type: string ErrorField: type: object properties: field: type: string description: type: string PersistentVolumeQuotas: type: object properties: max_total_size: type: integer format: int64 description: MaxTotalSize for all volumes on a region (in Gigabyte / GB). max_volume_size: type: integer format: int64 description: MaxVolumeSize for one volume (in Gigabyte / GB). max_per_instance_size: type: integer format: int64 description: MaxPerInstanceSize for all volumes on an instance (in Gigabyte / GB). google.rpc.Status: type: object properties: code: type: integer format: int32 message: type: string details: type: array items: $ref: '#/components/schemas/google.protobuf.Any' securitySchemes: Bearer: type: apiKey name: Authorization in: header x-tagGroups: - name: Introduction tags: - intro - name: API tags: - Profile - Sessions - Users - organization - Projects - OrganizationMembers - OrganizationInvitations - OrganizationConfirmations - Subscriptions - Coupons - Credentials - Secrets - activity - Apps - Services - Deployments - Archives - RegionalDeployments - Instances - Domains - PersistentVolumes - Snapshots - Compose - Repositories - Logs - Metrics - Catalog - CatalogRegions - CatalogInstances - Usages - Summary - DockerHelper