diff --git a/apis/cf/latest/components/requestBodies/PackageCreateRequestBody.yaml b/apis/cf/latest/components/requestBodies/PackageCreateRequestBody.yaml index bd980bf..aee3ac1 100644 --- a/apis/cf/latest/components/requestBodies/PackageCreateRequestBody.yaml +++ b/apis/cf/latest/components/requestBodies/PackageCreateRequestBody.yaml @@ -1,4 +1,4 @@ -description: Package object that needs to be created +description: Package object that needs to be created or copied. When copying (source_guid query parameter is provided), only relationships.app is required. When creating a new package, type and relationships.app are required. required: true content: application/json: @@ -7,7 +7,7 @@ content: properties: type: type: string - description: Type of the package; valid values are bits or docker + description: Type of the package; valid values are bits or docker. Required when creating a new package (when source_guid is not provided). Not required when copying a package (when source_guid is provided). enum: - bits - docker @@ -35,6 +35,5 @@ content: metadata: $ref: '../schemas/Metadata.yaml' required: - - type - relationships description: Request schema for creating a package diff --git a/apis/cf/latest/components/requestBodies/ServiceBrokerUpdateRequestBody.yaml b/apis/cf/latest/components/requestBodies/ServiceBrokerUpdateRequestBody.yaml new file mode 100644 index 0000000..d63a1b2 --- /dev/null +++ b/apis/cf/latest/components/requestBodies/ServiceBrokerUpdateRequestBody.yaml @@ -0,0 +1,39 @@ +description: Service broker object that needs to be updated +required: true +content: + application/json: + schema: + type: object + properties: + name: + type: string + description: Name of the service broker + url: + type: string + description: URL of the service broker + authentication: + type: object + description: Credentials used to authenticate against the service broker + properties: + type: + type: string + enum: [basic] + description: Authentication type + credentials: + type: object + description: Authentication credentials + properties: + username: + type: string + description: Username for basic authentication + password: + type: string + description: Password for basic authentication + required: + - username + - password + required: + - type + - credentials + metadata: + $ref: '../schemas/Metadata.yaml' diff --git a/apis/cf/latest/components/requestBodies/ServicePlanVisibilityCreateRequestBody.yaml b/apis/cf/latest/components/requestBodies/ServicePlanVisibilityCreateRequestBody.yaml new file mode 100644 index 0000000..bfdde9c --- /dev/null +++ b/apis/cf/latest/components/requestBodies/ServicePlanVisibilityCreateRequestBody.yaml @@ -0,0 +1,24 @@ +description: Service plan visibility object that needs to be created +required: true +content: + application/json: + schema: + type: object + properties: + type: + type: string + enum: [public, admin, organization] + description: Denotes the visibility of the plan + organizations: + type: array + items: + type: object + properties: + guid: + type: string + format: uuid + required: + - guid + description: Desired list of organizations GUIDs where the plan will be accessible; required if type is organization + required: + - type diff --git a/apis/cf/latest/components/requestBodies/ServicePlanVisibilityUpdateRequestBody.yaml b/apis/cf/latest/components/requestBodies/ServicePlanVisibilityUpdateRequestBody.yaml new file mode 100644 index 0000000..5aa583f --- /dev/null +++ b/apis/cf/latest/components/requestBodies/ServicePlanVisibilityUpdateRequestBody.yaml @@ -0,0 +1,24 @@ +description: Service plan visibility object that needs to be updated +required: true +content: + application/json: + schema: + type: object + properties: + type: + type: string + enum: [public, admin, organization] + description: Denotes the visibility of the plan + organizations: + type: array + items: + type: object + properties: + guid: + type: string + format: uuid + required: + - guid + description: Desired list of organizations GUIDs where the plan will be accessible; required if type is organization + required: + - type diff --git a/apis/cf/latest/components/requestBodies/SidecarUpdateRequestBody.yaml b/apis/cf/latest/components/requestBodies/SidecarUpdateRequestBody.yaml new file mode 100644 index 0000000..ff34791 --- /dev/null +++ b/apis/cf/latest/components/requestBodies/SidecarUpdateRequestBody.yaml @@ -0,0 +1,21 @@ +description: Sidecar object that needs to be updated +required: true +content: + application/json: + schema: + type: object + properties: + name: + type: string + description: Human-readable name for the sidecar + command: + type: string + description: The command used to start the sidecar + process_types: + type: array + items: + type: string + description: A list of process types the sidecar applies to + memory_in_mb: + type: integer + description: Reserved memory for sidecar diff --git a/apis/cf/latest/components/requestBodies/StackCreateRequestBody.yaml b/apis/cf/latest/components/requestBodies/StackCreateRequestBody.yaml new file mode 100644 index 0000000..758be34 --- /dev/null +++ b/apis/cf/latest/components/requestBodies/StackCreateRequestBody.yaml @@ -0,0 +1,19 @@ +description: Stack object that needs to be created +required: true +content: + application/json: + schema: + type: object + properties: + name: + type: string + description: Name of the stack; must be unique and no longer than 250 characters + maxLength: 250 + description: + type: [string, "null"] + description: Description of the stack; must no longer than 250 characters + maxLength: 250 + metadata: + $ref: '../schemas/Metadata.yaml' + required: + - name diff --git a/apis/cf/latest/components/responses/BadGateway.yaml b/apis/cf/latest/components/responses/BadGateway.yaml new file mode 100644 index 0000000..81b0adc --- /dev/null +++ b/apis/cf/latest/components/responses/BadGateway.yaml @@ -0,0 +1,5 @@ +description: Bad Gateway +content: + application/json: + schema: + $ref: '../schemas/Error.yaml' diff --git a/apis/cf/latest/components/responses/Conflict.yaml b/apis/cf/latest/components/responses/Conflict.yaml new file mode 100644 index 0000000..cfeed40 --- /dev/null +++ b/apis/cf/latest/components/responses/Conflict.yaml @@ -0,0 +1,20 @@ +description: Conflict +content: + application/json: + schema: + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + example: 10008 + title: + type: string + example: "CF-ResourceConflict" + detail: + type: string + example: "The resource could not be updated due to a conflict" diff --git a/apis/cf/latest/components/responses/TooManyRequests.yaml b/apis/cf/latest/components/responses/TooManyRequests.yaml new file mode 100644 index 0000000..cde85b5 --- /dev/null +++ b/apis/cf/latest/components/responses/TooManyRequests.yaml @@ -0,0 +1,20 @@ +description: Too Many Requests +content: + application/json: + schema: + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + example: 10008 + title: + type: string + example: "CF-RateLimitExceeded" + detail: + type: string + example: "Rate limit exceeded" diff --git a/apis/cf/latest/components/schemas/AppCredentialBinding.yaml b/apis/cf/latest/components/schemas/AppCredentialBinding.yaml index cdb5f03..4a2865f 100644 --- a/apis/cf/latest/components/schemas/AppCredentialBinding.yaml +++ b/apis/cf/latest/components/schemas/AppCredentialBinding.yaml @@ -1,80 +1,41 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the app credential binding - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - type: - type: string - enum: - - app - description: Type of credential binding - name: - type: string - description: Name of the credential binding - last_operation: - type: object - properties: +allOf: + - $ref: './BaseSchema.yaml' + - properties: type: type: string - description: Type of the last operation enum: - - create - - delete - state: - type: string - description: State of the last operation - enum: - - initial - - in progress - - succeeded - - failed - description: - type: string - description: A textual explanation associated with this state - created_at: - type: string - format: date-time - description: When the last operation was created - updated_at: - type: string - format: date-time - description: When the last operation was last updated - relationships: - type: object - properties: - app: - $ref: './RelationshipToOne.yaml' - service_instance: - $ref: './RelationshipToOne.yaml' - description: Relationships for the credential binding - links: - type: object - properties: - self: - $ref: './Link.yaml' - details: - $ref: './Link.yaml' - app: - $ref: './Link.yaml' - service_instance: - $ref: './Link.yaml' - parameters: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - type - - relationships - - links + - app + description: Type of credential binding + name: + type: [string, "null"] + description: Name of the credential binding + last_operation: + $ref: './ServiceCredentialBindingLastOperation.yaml' + relationships: + type: object + properties: + app: + $ref: './RelationshipToOne.yaml' + service_instance: + $ref: './RelationshipToOne.yaml' + description: Relationships for the credential binding + links: + type: object + properties: + self: + $ref: './Link.yaml' + details: + $ref: './Link.yaml' + app: + $ref: './Link.yaml' + service_instance: + $ref: './Link.yaml' + parameters: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - type + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/AppEnvironment.yaml b/apis/cf/latest/components/schemas/AppEnvironment.yaml index 06cc326..5263ee5 100644 --- a/apis/cf/latest/components/schemas/AppEnvironment.yaml +++ b/apis/cf/latest/components/schemas/AppEnvironment.yaml @@ -12,7 +12,7 @@ properties: type: object description: User-defined environment variables additionalProperties: - type: string + type: [string, "null"] system_env_json: type: object description: System environment variables including VCAP_SERVICES diff --git a/apis/cf/latest/components/schemas/AppEnvironmentVariables.yaml b/apis/cf/latest/components/schemas/AppEnvironmentVariables.yaml index e00bf67..97f3dbe 100644 --- a/apis/cf/latest/components/schemas/AppEnvironmentVariables.yaml +++ b/apis/cf/latest/components/schemas/AppEnvironmentVariables.yaml @@ -4,7 +4,7 @@ properties: type: object description: Environment variables additionalProperties: - type: string + type: [string, "null"] links: type: object properties: diff --git a/apis/cf/latest/components/schemas/AppFeature.yaml b/apis/cf/latest/components/schemas/AppFeature.yaml index 8945040..4c7a1f5 100644 --- a/apis/cf/latest/components/schemas/AppFeature.yaml +++ b/apis/cf/latest/components/schemas/AppFeature.yaml @@ -4,7 +4,7 @@ properties: type: string description: The name of the app feature description: - type: string + type: [string, "null"] description: The description of the app feature enabled: type: boolean diff --git a/apis/cf/latest/components/schemas/AppUsageEvent.yaml b/apis/cf/latest/components/schemas/AppUsageEvent.yaml index 0fe0b5f..5cf0cb5 100644 --- a/apis/cf/latest/components/schemas/AppUsageEvent.yaml +++ b/apis/cf/latest/components/schemas/AppUsageEvent.yaml @@ -9,7 +9,7 @@ properties: type: string description: Current state of the app that this event pertains to, if applicable previous: - type: string + type: [string, "null"] description: Previous state of the app that this event pertains to, if applicable app: type: object @@ -18,7 +18,7 @@ properties: type: string description: Unique identifier of the app that this event pertains to, if applicable name: - type: string + type: [string, "null"] description: Name of the app that this event pertains to, if applicable process: type: object @@ -36,7 +36,7 @@ properties: type: string description: Unique identifier of the space that this event pertains to, if applicable name: - type: string + type: [string, "null"] description: Name of the space that this event pertains to, if applicable organization: type: object @@ -51,7 +51,7 @@ properties: type: string description: Unique identifier of the buildpack that this event pertains to, if applicable name: - type: string + type: [string, "null"] description: Name of the buildpack that this event pertains to, if applicable task: type: object @@ -60,7 +60,7 @@ properties: type: string description: Unique identifier of the task that this event pertains to, if applicable name: - type: string + type: [string, "null"] description: Name of the task that this event pertains to, if applicable memory_in_mb_per_instance: type: object @@ -69,7 +69,7 @@ properties: type: integer description: Current memory in MB of the app that this event pertains to, if applicable previous: - type: integer + type: [integer, "null"] description: Previous memory in MB of the app that this event pertains to, if applicable instance_count: type: object @@ -78,7 +78,7 @@ properties: type: integer description: Current instance count of the app that this event pertains to, if applicable previous: - type: integer + type: [integer, "null"] description: Previous instance count of the app that this event pertains to, if applicable description: >- App usage events are a record of changes in the usage of apps and tasks. Examples include starting an application, scaling an application (from, say, one to three instances), and stopping an application. diff --git a/apis/cf/latest/components/schemas/AuditEvent.yaml b/apis/cf/latest/components/schemas/AuditEvent.yaml index 7650919..1a11b1b 100644 --- a/apis/cf/latest/components/schemas/AuditEvent.yaml +++ b/apis/cf/latest/components/schemas/AuditEvent.yaml @@ -33,13 +33,13 @@ allOf: type: object description: Additional information about event space: - type: object + type: [object, "null"] properties: guid: type: string description: Unique identifier for the space where the event occurred; if the event did not occur within a space, the `space` field will be `null` organization: - type: object + type: [object, "null"] properties: guid: type: string diff --git a/apis/cf/latest/components/schemas/Build.yaml b/apis/cf/latest/components/schemas/Build.yaml index 0f8707f..1f0286c 100644 --- a/apis/cf/latest/components/schemas/Build.yaml +++ b/apis/cf/latest/components/schemas/Build.yaml @@ -10,10 +10,10 @@ allOf: - STAGED - FAILED staging_memory_in_mb: - type: integer + type: [integer, "null"] description: Memory in MB allocated for staging of the build staging_disk_in_mb: - type: integer + type: [integer, "null"] description: Disk space in MB allocated for staging of the build staging_log_rate_limit_bytes_per_second: type: integer @@ -58,10 +58,10 @@ allOf: type: string description: The guid of the user that created the build name: - type: string + type: [string, "null"] description: The name of the user that created the build email: - type: string + type: [string, "null"] description: The email of the user that created the build links: type: object diff --git a/apis/cf/latest/components/schemas/BuildUpdate.yaml b/apis/cf/latest/components/schemas/BuildUpdate.yaml new file mode 100644 index 0000000..d1f736f --- /dev/null +++ b/apis/cf/latest/components/schemas/BuildUpdate.yaml @@ -0,0 +1,26 @@ +type: object +properties: + state: + type: string + description: State of the build + enum: + - STAGING + - STAGED + - FAILED + staging_memory_in_mb: + type: [integer, "null"] + description: Memory in MB allocated for staging of the build + staging_disk_in_mb: + type: [integer, "null"] + description: Disk space in MB allocated for staging of the build + staging_log_rate_limit_bytes_per_second: + type: integer + description: Log rate limit in bytes per second allocated for staging of the build + error: + type: [string, 'null'] + description: A string describing errors during the build process + lifecycle: + $ref: './Lifecycle.yaml' + description: Provides the lifecycle object to use during staging + metadata: + $ref: './Metadata.yaml' diff --git a/apis/cf/latest/components/schemas/Deployment.yaml b/apis/cf/latest/components/schemas/Deployment.yaml index b405bbd..3261efe 100644 --- a/apis/cf/latest/components/schemas/Deployment.yaml +++ b/apis/cf/latest/components/schemas/Deployment.yaml @@ -1,102 +1,99 @@ type: object allOf: - - $ref: './BaseSchema.yaml' - - properties: - status: - type: object - properties: - value: - type: string - description: The current status of the deployment - enum: - - ACTIVE - - FINALIZED - reason: - type: string - description: The reason for the status of the deployment - enum: - - DEPLOYING - - PAUSED - - CANCELING - - DEPLOYED - - CANCELED - - SUPERSEDED - details: - type: object - properties: - last_successful_healthcheck: - type: string - format: date-time - description: Timestamp of the last successful health check - last_status_change: - type: string - format: date-time - description: Timestamp of last change to status.value or status.reason - strategy: - type: string - description: Strategy used for the deployment - enum: - - rolling - - canary - options: - type: object - properties: - max_in_flight: - type: integer - description: The maximum number of new instances to deploy simultaneously - droplet: - type: object - properties: - guid: - type: string - format: uuid - description: The droplet guid that the deployment is transitioning the app to - previous_droplet: - type: object - properties: - guid: - type: string - format: uuid - description: The app’s [current droplet guid](#get-current-droplet-association-for-an-app) before the deployment was created - new_processes: - type: array - items: +- $ref: ./BaseSchema.yaml +- properties: + status: + type: object + properties: + value: + type: string + description: The current status of the deployment + enum: + - ACTIVE + - FINALIZED + reason: + type: string + description: The reason for the status of the deployment + enum: + - DEPLOYING + - PAUSED + - CANCELING + - DEPLOYED + - CANCELED + - SUPERSEDED + details: type: object properties: - guid: + last_successful_healthcheck: type: string - format: uuid - description: The GUID of the new process created as part of the deployment - type: + format: date-time + description: Timestamp of the last successful health check + last_status_change: type: string - description: The type of the new process created as part of the deployment - revision: + format: date-time + description: Timestamp of last change to status.value or status.reason + strategy: + type: string + description: Strategy used for the deployment + enum: + - rolling + - canary + options: + type: object + properties: + max_in_flight: + type: integer + description: The maximum number of new instances to deploy simultaneously + droplet: + type: object + properties: + guid: + type: string + format: uuid + description: The droplet guid that the deployment is transitioning the app to + previous_droplet: + type: object + properties: + guid: + type: string + format: uuid + description: "The app\u2019s [current droplet guid](#get-current-droplet-association-for-an-app) before the deployment was created" + new_processes: + type: array + items: type: object properties: guid: type: string format: uuid - description: The revision the deployment is transitioning the app to - version: - type: integer - description: The version of the revision - relationships: - $ref: './Relationships.yaml' - metadata: - $ref: './Metadata.yaml' - links: - type: object - properties: - self: - $ref: './Link.yaml' - description: The URL to get this deployment - app: - $ref: './Link.yaml' - description: The URL to get the app for this deployment - cancel: - $ref: './Link.yaml' - description: The URL to cancel this deployment -description: > - Deployments are objects that manage updates to applications with zero downtime. They can either: - Manage updating an app’s droplet directly after an application package is staged - Roll an app back to a specific revision along with its associated droplet - - Deployment strategies supported: - Rolling deployments allow for applications to be deployed without incurring downtime by gradually rolling out instances. Max-in-flight can be configured to specify how many instances are rolled out simultaneously. - Canary deployments deploy a single instance and pause for user evaluation. If the canary instance is deemed successful, the deployment can be resumed via the continue action. The deployment then continues like a rolling deployment. This feature is experimental and is subject to change. + description: The GUID of the new process created as part of the deployment + type: + type: string + description: The type of the new process created as part of the deployment + revision: + type: [object, "null"] + properties: + guid: + type: string + format: uuid + description: The revision the deployment is transitioning the app to + version: + type: integer + description: The version of the revision + relationships: + $ref: ./Relationships.yaml + metadata: + $ref: ./Metadata.yaml + links: + type: object + properties: + self: + $ref: ./Link.yaml + description: The URL to get this deployment + app: + $ref: ./Link.yaml + description: The URL to get the app for this deployment + cancel: + $ref: ./Link.yaml + description: The URL to cancel this deployment +description: "Deployments are objects that manage updates to applications with zero downtime. They can either: - Manage updating an app\u2019s droplet directly after an application package is staged - Roll an app back to a specific revision along with its associated droplet\nDeployment strategies supported: - Rolling deployments allow for applications to be deployed without incurring downtime by gradually rolling out instances. Max-in-flight can be configured to specify how many instances are rolled out simultaneously. - Canary deployments deploy a single instance and pause for user evaluation. If the canary instance is deemed successful, the deployment can be resumed via the continue action. The deployment then continues like a rolling deployment. This feature is experimental and is subject to change.\n" diff --git a/apis/cf/latest/components/schemas/Droplet.yaml b/apis/cf/latest/components/schemas/Droplet.yaml index 4c9d130..81fc21a 100644 --- a/apis/cf/latest/components/schemas/Droplet.yaml +++ b/apis/cf/latest/components/schemas/Droplet.yaml @@ -11,7 +11,7 @@ allOf: lifecycle: $ref: './Lifecycle.yaml' execution_metadata: - type: string + type: [string, "null"] description: Serialized JSON data resulting from staging for use when executing a droplet process_types: type: object @@ -49,12 +49,12 @@ allOf: type: string description: Checksum of the droplet buildpacks: - type: array + type: [array, "null"] items: type: object properties: name: - type: string + type: [string, "null"] description: System buildpack name detect_output: type: [string, 'null'] @@ -63,7 +63,7 @@ allOf: type: [string, 'null'] description: Version reported by the buildpack buildpack_name: - type: string + type: [string, "null"] description: Name reported by the buildpack stack: type: [string, 'null'] diff --git a/apis/cf/latest/components/schemas/EnvironmentVariableGroup.yaml b/apis/cf/latest/components/schemas/EnvironmentVariableGroup.yaml index 8473d42..46af31a 100644 --- a/apis/cf/latest/components/schemas/EnvironmentVariableGroup.yaml +++ b/apis/cf/latest/components/schemas/EnvironmentVariableGroup.yaml @@ -5,12 +5,12 @@ properties: format: date-time description: The time the environment variable group was last updated name: - type: string + type: [string, "null"] description: The name of the group; can only be "running" or "staging" var: type: object additionalProperties: - type: string + type: [string, "null"] description: Environment variables to inject; keys and values must be strings links: type: object diff --git a/apis/cf/latest/components/schemas/FeatureFlag.yaml b/apis/cf/latest/components/schemas/FeatureFlag.yaml index d904fd4..72bc762 100644 --- a/apis/cf/latest/components/schemas/FeatureFlag.yaml +++ b/apis/cf/latest/components/schemas/FeatureFlag.yaml @@ -7,11 +7,11 @@ properties: type: boolean description: Whether the feature flag is enabled updated_at: - type: string + type: [string, "null"] format: date-time description: The time the feature flag was last updated; this will be blank for feature flags that have not been configured custom_error_message: - type: string + type: [string, "null"] description: The error string returned by the API when a client performs an action disabled by the feature flag links: type: object diff --git a/apis/cf/latest/components/schemas/IsolationSegment.yaml b/apis/cf/latest/components/schemas/IsolationSegment.yaml index ef3f7c7..4007eaa 100644 --- a/apis/cf/latest/components/schemas/IsolationSegment.yaml +++ b/apis/cf/latest/components/schemas/IsolationSegment.yaml @@ -1,3 +1,4 @@ +type: object allOf: - $ref: './BaseSchema.yaml' - properties: diff --git a/apis/cf/latest/components/schemas/KeyCredentialBinding.yaml b/apis/cf/latest/components/schemas/KeyCredentialBinding.yaml index 4a08a6e..97bf9f7 100644 --- a/apis/cf/latest/components/schemas/KeyCredentialBinding.yaml +++ b/apis/cf/latest/components/schemas/KeyCredentialBinding.yaml @@ -1,71 +1,35 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the key credential binding - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - type: - type: string - enum: - - key - description: Type of credential binding - name: - type: string - description: Name of the credential binding - last_operation: - type: object - properties: +allOf: + - $ref: './BaseSchema.yaml' + - properties: type: type: string - description: Type of the last operation - state: - type: string - description: State of the last operation enum: - - initial - - in progress - - succeeded - - failed - description: - type: string - description: Description of the last operation - created_at: - type: string - format: date-time - description: When the last operation was created - updated_at: + - key + description: Type of credential binding + name: type: string - format: date-time - description: When the last operation was last updated - relationships: - type: object - properties: - service_instance: - $ref: './RelationshipToOne.yaml' - description: Relationships for the credential binding - links: - type: object - properties: - self: - $ref: './Link.yaml' - details: - $ref: './Link.yaml' - service_instance: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - type - - relationships - - links + description: Name of the credential binding + last_operation: + $ref: './ServiceCredentialBindingLastOperation.yaml' + relationships: + type: object + properties: + service_instance: + $ref: './RelationshipToOne.yaml' + description: Relationships for the credential binding + links: + type: object + properties: + self: + $ref: './Link.yaml' + details: + $ref: './Link.yaml' + service_instance: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - type + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/Lifecycle.yaml b/apis/cf/latest/components/schemas/Lifecycle.yaml index 15bfe05..9645df8 100644 --- a/apis/cf/latest/components/schemas/Lifecycle.yaml +++ b/apis/cf/latest/components/schemas/Lifecycle.yaml @@ -14,7 +14,7 @@ properties: type: string description: List of the names of buildpacks, URLs from which they may be downloaded, or null to auto-detect a suitable buildpack during staging (applicable for buildpack and cnb lifecycles) stack: - type: string + type: [string, "null"] description: The root filesystem to use with the buildpack, for example cflinuxfs4 (applicable for buildpack lifecycle) credentials: type: object @@ -22,9 +22,9 @@ properties: type: object properties: username: - type: string + type: [string, "null"] password: - type: string + type: [string, "null"] token: type: string description: Credentials used to download the configured buildpacks (applicable for cnb lifecycle) diff --git a/apis/cf/latest/components/schemas/ManagedServiceInstance.yaml b/apis/cf/latest/components/schemas/ManagedServiceInstance.yaml index 9eba6dd..519f467 100644 --- a/apis/cf/latest/components/schemas/ManagedServiceInstance.yaml +++ b/apis/cf/latest/components/schemas/ManagedServiceInstance.yaml @@ -1,111 +1,75 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the managed service instance - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - type: - type: string - enum: - - managed - description: Type of service instance - name: - type: string - description: Name of the service instance - tags: - type: array - items: - type: string - description: Tags for the service instance - syslog_drain_url: - type: string - format: uri - description: URL for syslog drain - route_service_url: - type: string - format: uri - description: URL for route service - dashboard_url: - type: string - format: uri - description: URL for service dashboard - maintenance_info: - type: object - properties: - version: - type: string - description: Version of maintenance info - description: - type: string - description: Description of maintenance info - upgrade_available: - type: boolean - description: Whether an upgrade is available - last_operation: - type: object - properties: +allOf: + - $ref: './BaseSchema.yaml' + - properties: type: type: string - description: Type of the last operation - state: - type: string - description: State of the last operation enum: - - initial - - in progress - - succeeded - - failed - description: - type: string - description: Description of the last operation - created_at: - type: string - format: date-time - description: When the last operation was created - updated_at: + - managed + description: Type of service instance + name: type: string - format: date-time - description: When the last operation was last updated - relationships: - type: object - properties: - space: - $ref: './RelationshipToOne.yaml' - service_plan: - $ref: './RelationshipToOne.yaml' - description: Relationships for the service instance - links: - type: object - properties: - self: - $ref: './Link.yaml' - space: - $ref: './Link.yaml' - service_plan: - $ref: './Link.yaml' - parameters: - $ref: './Link.yaml' - service_credential_bindings: - $ref: './Link.yaml' - service_route_bindings: - $ref: './Link.yaml' - shared_spaces: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - type - - name - - relationships - - links + description: Name of the service instance + tags: + type: array + items: + type: string + description: Tags for the service instance + syslog_drain_url: + type: [string, "null"] + format: uri + description: URL for syslog drain + route_service_url: + type: [string, "null"] + format: uri + description: URL for route service + dashboard_url: + type: [string, "null"] + format: uri + description: URL for service dashboard + maintenance_info: + type: object + properties: + version: + type: string + description: Version of maintenance info + description: + type: [string, "null"] + description: Description of maintenance info + upgrade_available: + type: boolean + description: Whether an upgrade is available + last_operation: + $ref: './ServiceInstanceLastOperation.yaml' + relationships: + type: object + properties: + space: + $ref: './RelationshipToOne.yaml' + service_plan: + $ref: './RelationshipToOne.yaml' + description: Relationships for the service instance + links: + type: object + properties: + self: + $ref: './Link.yaml' + space: + $ref: './Link.yaml' + service_plan: + $ref: './Link.yaml' + parameters: + $ref: './Link.yaml' + service_credential_bindings: + $ref: './Link.yaml' + service_route_bindings: + $ref: './Link.yaml' + shared_spaces: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - type + - name + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/Metadata.yaml b/apis/cf/latest/components/schemas/Metadata.yaml index 3092a4a..92846d2 100644 --- a/apis/cf/latest/components/schemas/Metadata.yaml +++ b/apis/cf/latest/components/schemas/Metadata.yaml @@ -3,7 +3,7 @@ properties: labels: type: object additionalProperties: - type: string + type: [string, "null"] description: | A set of key-value pairs that describe the resource. Labels are a JSON object that contains information about a resource. They are used to tag resources with metadata that can be used to filter and group resources. Labels are included in the response body of a request to retrieve a resource. Labels are user-specified key/value pairs that are attached to API Resources. They are queryable, identifying attributes of a resource, but they do not affect the operation of CloudFoundry. @@ -43,7 +43,7 @@ properties: annotations: type: object additionalProperties: - type: string + type: [string, "null"] description: | A set of key-value pairs that describe the resource. Annotations are a JSON object that contains information about a resource. They are used to tag resources with metadata that can be used to filter and group resources. Annotations are included in the response body of a request to retrieve a resource. Annotations are user-specified key-value pairs that are attached to API resources. They do not affect the operation of Cloud Foundry. Annotations cannot be used in filters. diff --git a/apis/cf/latest/components/schemas/Package.yaml b/apis/cf/latest/components/schemas/Package.yaml index 5a3d76c..2d5852a 100644 --- a/apis/cf/latest/components/schemas/Package.yaml +++ b/apis/cf/latest/components/schemas/Package.yaml @@ -28,10 +28,10 @@ allOf: type: string description: The registry address of the image username: - type: string + type: [string, "null"] description: The username for the image's registry password: - type: string + type: [string, "null"] description: The password for the image's registry state: type: string diff --git a/apis/cf/latest/components/schemas/Process.yaml b/apis/cf/latest/components/schemas/Process.yaml index 5f15e2b..f00637f 100644 --- a/apis/cf/latest/components/schemas/Process.yaml +++ b/apis/cf/latest/components/schemas/Process.yaml @@ -19,10 +19,10 @@ allOf: type: integer description: The number of instances to run memory_in_mb: - type: integer + type: [integer, "null"] description: The memory in MB allocated per instance disk_in_mb: - type: integer + type: [integer, "null"] description: The disk in MB allocated per instance log_rate_limit_in_bytes_per_second: type: integer diff --git a/apis/cf/latest/components/schemas/Revision.yaml b/apis/cf/latest/components/schemas/Revision.yaml index 3a90aaa..53b19ee 100644 --- a/apis/cf/latest/components/schemas/Revision.yaml +++ b/apis/cf/latest/components/schemas/Revision.yaml @@ -6,7 +6,7 @@ allOf: type: integer description: Version number of the revision description: - type: string + type: [string, "null"] description: Description of the revision, created by the user droplet: $ref: './RelationshipToOne.yaml' diff --git a/apis/cf/latest/components/schemas/RouteDestination.yaml b/apis/cf/latest/components/schemas/RouteDestination.yaml index c7da6e6..39680cd 100644 --- a/apis/cf/latest/components/schemas/RouteDestination.yaml +++ b/apis/cf/latest/components/schemas/RouteDestination.yaml @@ -19,12 +19,12 @@ properties: port: type: integer protocol: - type: string + type: [string, "null"] created_at: type: string format: date-time updated_at: - type: string + type: [string, "null"] format: date-time metadata: $ref: './Metadata.yaml' diff --git a/apis/cf/latest/components/schemas/SecurityGroup.yaml b/apis/cf/latest/components/schemas/SecurityGroup.yaml index 07c3121..84ea725 100644 --- a/apis/cf/latest/components/schemas/SecurityGroup.yaml +++ b/apis/cf/latest/components/schemas/SecurityGroup.yaml @@ -1,85 +1,72 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the security group - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the security group - globally_enabled: - type: object - properties: - running: - type: boolean - description: Whether the security group is globally enabled for running apps - staging: - type: boolean - description: Whether the security group is globally enabled for staging apps - rules: - type: array - items: - type: object - properties: - protocol: - type: string - description: Protocol for the rule - destination: - type: string - description: Destination for the rule - ports: - type: string - description: Ports for the rule - type: - type: integer - description: Type for ICMP rules - code: - type: integer - description: Code for ICMP rules - description: - type: string - description: Description of the rule - description: Rules for the security group - running_spaces: - type: object - properties: - data: +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the security group + globally_enabled: + type: object + properties: + running: + type: boolean + description: Whether the security group is globally enabled for running apps + staging: + type: boolean + description: Whether the security group is globally enabled for staging apps + rules: type: array items: - $ref: './Relationship.yaml' - description: Spaces where this security group is applied to running apps - staging_spaces: - type: object - properties: - data: - type: array - items: - $ref: './Relationship.yaml' - description: Spaces where this security group is applied to staging apps - links: - type: object - properties: - self: - $ref: './Link.yaml' + type: object + properties: + protocol: + type: string + description: Protocol for the rule + destination: + type: string + description: Destination for the rule + ports: + type: string + description: Ports for the rule + type: + type: integer + description: Type for ICMP rules + code: + type: integer + description: Code for ICMP rules + description: + type: string + description: Description of the rule + description: Rules for the security group running_spaces: - $ref: './Link.yaml' + type: object + properties: + data: + type: array + items: + $ref: './Relationship.yaml' + description: Spaces where this security group is applied to running apps staging_spaces: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - globally_enabled - - rules - - links + type: object + properties: + data: + type: array + items: + $ref: './Relationship.yaml' + description: Spaces where this security group is applied to staging apps + links: + type: object + properties: + self: + $ref: './Link.yaml' + running_spaces: + $ref: './Link.yaml' + staging_spaces: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - globally_enabled + - rules + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/SecurityGroupCreate.yaml b/apis/cf/latest/components/schemas/SecurityGroupCreate.yaml new file mode 100644 index 0000000..bd82d9c --- /dev/null +++ b/apis/cf/latest/components/schemas/SecurityGroupCreate.yaml @@ -0,0 +1,42 @@ +type: object +properties: + name: + type: string + description: Name of the security group + globally_enabled: + type: object + properties: + running: + type: boolean + description: Whether the security group is globally enabled for running apps + staging: + type: boolean + description: Whether the security group is globally enabled for staging apps + rules: + type: array + items: + type: object + properties: + protocol: + type: string + description: Protocol for the rule + destination: + type: string + description: Destination for the rule + ports: + type: string + description: Ports for the rule + type: + type: integer + description: Type for ICMP rules + code: + type: integer + description: Code for ICMP rules + description: + type: [string, "null"] + description: Description of the rule + description: Rules for the security group + metadata: + $ref: './Metadata.yaml' +required: + - name \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/SecurityGroupUpdate.yaml b/apis/cf/latest/components/schemas/SecurityGroupUpdate.yaml new file mode 100644 index 0000000..b281ff5 --- /dev/null +++ b/apis/cf/latest/components/schemas/SecurityGroupUpdate.yaml @@ -0,0 +1,40 @@ +type: object +properties: + name: + type: string + description: Name of the security group + globally_enabled: + type: object + properties: + running: + type: boolean + description: Whether the security group is globally enabled for running apps + staging: + type: boolean + description: Whether the security group is globally enabled for staging apps + rules: + type: array + items: + type: object + properties: + protocol: + type: string + description: Protocol for the rule + destination: + type: string + description: Destination for the rule + ports: + type: string + description: Ports for the rule + type: + type: integer + description: Type for ICMP rules + code: + type: integer + description: Code for ICMP rules + description: + type: [string, "null"] + description: Description of the rule + description: Rules for the security group + metadata: + $ref: './Metadata.yaml' diff --git a/apis/cf/latest/components/schemas/ServiceBroker.yaml b/apis/cf/latest/components/schemas/ServiceBroker.yaml index 0ec9e62..2d5a4ec 100644 --- a/apis/cf/latest/components/schemas/ServiceBroker.yaml +++ b/apis/cf/latest/components/schemas/ServiceBroker.yaml @@ -1,45 +1,32 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the service broker - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the service broker - url: - type: string - format: uri - description: URL of the service broker - relationships: - type: object - properties: - space: - $ref: './RelationshipToOne.yaml' - description: Relationships for the service broker - links: - type: object - properties: - self: - $ref: './Link.yaml' - space: - $ref: './Link.yaml' - service_offerings: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - url - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the service broker + url: + type: string + format: uri + description: URL of the service broker + relationships: + type: object + properties: + space: + $ref: './RelationshipToOne.yaml' + description: Relationships for the service broker + links: + type: object + properties: + self: + $ref: './Link.yaml' + space: + $ref: './Link.yaml' + service_offerings: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - url + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/ServiceCredentialBindingLastOperation.yaml b/apis/cf/latest/components/schemas/ServiceCredentialBindingLastOperation.yaml new file mode 100644 index 0000000..259990a --- /dev/null +++ b/apis/cf/latest/components/schemas/ServiceCredentialBindingLastOperation.yaml @@ -0,0 +1,28 @@ +type: object +properties: + type: + type: string + description: Type of the last operation + enum: + - create + - delete + state: + type: string + description: State of the last operation + enum: + - initial + - in progress + - succeeded + - failed + description: + type: [string, "null"] + description: A textual explanation associated with this state + created_at: + type: string + format: date-time + description: When the last operation was created + updated_at: + type: string + format: date-time + description: When the last operation was last updated +description: The last operation object for service credential bindings diff --git a/apis/cf/latest/components/schemas/ServiceInstanceLastOperation.yaml b/apis/cf/latest/components/schemas/ServiceInstanceLastOperation.yaml new file mode 100644 index 0000000..80ea6c8 --- /dev/null +++ b/apis/cf/latest/components/schemas/ServiceInstanceLastOperation.yaml @@ -0,0 +1,29 @@ +type: object +properties: + type: + type: string + description: Type of the last operation + enum: + - create + - update + - delete + state: + type: string + description: State of the last operation + enum: + - initial + - in progress + - succeeded + - failed + description: + type: [string, "null"] + description: A textual explanation associated with this state + created_at: + type: string + format: date-time + description: When the last operation was created + updated_at: + type: string + format: date-time + description: When the last operation was last updated +description: The last operation object for service instances diff --git a/apis/cf/latest/components/schemas/ServiceOffering.yaml b/apis/cf/latest/components/schemas/ServiceOffering.yaml index 9abb583..c3ceed7 100644 --- a/apis/cf/latest/components/schemas/ServiceOffering.yaml +++ b/apis/cf/latest/components/schemas/ServiceOffering.yaml @@ -1,42 +1,22 @@ type: object -properties: - guid: - type: string - name: - type: string - description: - type: string - available: - type: boolean - tags: - type: array - items: - type: string - requires: - type: array - items: - type: string - created_at: - type: string - format: date-time - updated_at: - type: string - format: date-time - service_broker_guid: - type: string - service_broker_name: - type: string - metadata: - $ref: './Metadata.yaml' - links: - type: object - properties: - self: - $ref: './Link.yaml' - description: The URL to get this service offering - service_plans: - $ref: './Link.yaml' - description: The URL to get the service plans for this offering - service_broker: - $ref: './Link.yaml' - description: The URL to get the service broker for this offering +allOf: + - $ref: './BaseSchema.yaml' + - properties: + service_broker_guid: + type: string + service_broker_name: + type: string + metadata: + $ref: './Metadata.yaml' + links: + type: object + properties: + self: + $ref: './Link.yaml' + description: The URL to get this service offering + service_plans: + $ref: './Link.yaml' + description: The URL to get the service plans for this offering + service_broker: + $ref: './Link.yaml' + description: The URL to get the service broker for this offering \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/ServicePlan.yaml b/apis/cf/latest/components/schemas/ServicePlan.yaml index 2d24e36..4fb7954 100644 --- a/apis/cf/latest/components/schemas/ServicePlan.yaml +++ b/apis/cf/latest/components/schemas/ServicePlan.yaml @@ -1,47 +1,22 @@ type: object -properties: - guid: - type: string - name: - type: string - description: - type: string - available: - type: boolean - free: - type: boolean - public: - type: boolean - costs: - type: array - items: - type: object - properties: - amount: - type: number - unit: - type: string - created_at: - type: string - format: date-time - updated_at: - type: string - format: date-time - service_offering_guid: - type: string - service_offering_name: - type: string - metadata: - $ref: './Metadata.yaml' - links: - type: object - properties: - self: - $ref: './Link.yaml' - description: The URL to get this service plan - service_offering: - $ref: './Link.yaml' - description: The URL to get the service offering for this plan - visibility: - $ref: './Link.yaml' - description: The URL to get the visibility for this plan +allOf: + - $ref: './BaseSchema.yaml' + - properties: + service_offering_guid: + type: string + service_offering_name: + type: string + metadata: + $ref: './Metadata.yaml' + links: + type: object + properties: + self: + $ref: './Link.yaml' + description: The URL to get this service plan + service_offering: + $ref: './Link.yaml' + description: The URL to get the service offering for this plan + visibility: + $ref: './Link.yaml' + description: The URL to get the visibility for this plan \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/ServiceRouteBinding.yaml b/apis/cf/latest/components/schemas/ServiceRouteBinding.yaml index 7138de4..0753017 100644 --- a/apis/cf/latest/components/schemas/ServiceRouteBinding.yaml +++ b/apis/cf/latest/components/schemas/ServiceRouteBinding.yaml @@ -1,68 +1,32 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the service route binding - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - route_service_url: - type: string - format: uri - description: URL for the route service - last_operation: - type: object - properties: - type: - type: string - description: Type of the last operation - state: - type: string - description: State of the last operation - enum: - - initial - - in progress - - succeeded - - failed - description: - type: string - description: Description of the last operation - created_at: - type: string - format: date-time - description: When the last operation was created - updated_at: - type: string - format: date-time - description: When the last operation was last updated - relationships: - type: object - properties: - route: - $ref: './RelationshipToOne.yaml' - service_instance: - $ref: './RelationshipToOne.yaml' - description: Relationships for the service route binding - links: - type: object - properties: - self: - $ref: './Link.yaml' - route: - $ref: './Link.yaml' - service_instance: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - relationships - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + route_service_url: + type: [string, "null"] + format: uri + description: URL for the route service + last_operation: + $ref: './ServiceCredentialBindingLastOperation.yaml' + relationships: + type: object + properties: + route: + $ref: './RelationshipToOne.yaml' + service_instance: + $ref: './RelationshipToOne.yaml' + description: Relationships for the service route binding + links: + type: object + properties: + self: + $ref: './Link.yaml' + route: + $ref: './Link.yaml' + service_instance: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/ServiceRouteBindingCreate.yaml b/apis/cf/latest/components/schemas/ServiceRouteBindingCreate.yaml new file mode 100644 index 0000000..5f51852 --- /dev/null +++ b/apis/cf/latest/components/schemas/ServiceRouteBindingCreate.yaml @@ -0,0 +1,22 @@ +type: object +properties: + relationships: + type: object + properties: + route: + $ref: './RelationshipToOne.yaml' + description: The route to bind + service_instance: + $ref: './RelationshipToOne.yaml' + description: The service instance to bind + required: + - route + - service_instance + description: Relationships for the service route binding + parameters: + type: object + description: A JSON object that is passed to the service broker + metadata: + $ref: './Metadata.yaml' +required: + - relationships \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/ServiceUsageEvent.yaml b/apis/cf/latest/components/schemas/ServiceUsageEvent.yaml index 0e5110b..17e123c 100644 --- a/apis/cf/latest/components/schemas/ServiceUsageEvent.yaml +++ b/apis/cf/latest/components/schemas/ServiceUsageEvent.yaml @@ -1,42 +1,10 @@ type: object -properties: - guid: - type: string - state: - type: string - space_guid: - type: string - space_name: - type: string - org_guid: - type: string - service_instance_guid: - type: string - service_instance_name: - type: string - service_instance_type: - type: string - service_plan_guid: - type: string - service_plan_name: - type: string - service_offering_guid: - type: string - service_offering_name: - type: string - service_broker_guid: - type: string - service_broker_name: - type: string - created_at: - type: string - format: date-time - updated_at: - type: string - format: date-time - links: - type: object - properties: - self: - $ref: './Link.yaml' - description: The URL to get this service usage event +allOf: + - $ref: './BaseSchema.yaml' + - properties: + links: + type: object + properties: + self: + $ref: './Link.yaml' + description: The URL to get this service usage event \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/Sidecar.yaml b/apis/cf/latest/components/schemas/Sidecar.yaml index e76b181..7b42116 100644 --- a/apis/cf/latest/components/schemas/Sidecar.yaml +++ b/apis/cf/latest/components/schemas/Sidecar.yaml @@ -1,57 +1,44 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the sidecar - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the sidecar - command: - type: string - description: Command to run for the sidecar - process_types: - type: array - items: - type: string - description: Process types that the sidecar applies to - memory_in_mb: - type: integer - description: Memory limit for the sidecar in MB - origin: - type: string - description: Origin of the sidecar - enum: - - user - - buildpack - relationships: - type: object - properties: - app: - $ref: './RelationshipToOne.yaml' - description: Relationships for the sidecar - links: - type: object - properties: - self: - $ref: './Link.yaml' - app: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - command - - process_types - - relationships +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the sidecar + command: + type: string + description: Command to run for the sidecar + process_types: + type: array + items: + type: string + description: Process types that the sidecar applies to + memory_in_mb: + type: [integer, "null"] + description: Memory limit for the sidecar in MB + origin: + type: [string, "null"] + description: Origin of the sidecar + enum: + - user + - buildpack + relationships: + type: object + properties: + app: + $ref: './RelationshipToOne.yaml' + description: Relationships for the sidecar + links: + type: object + properties: + self: + $ref: './Link.yaml' + app: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - command + - process_types + - relationships \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/SidecarCreate.yaml b/apis/cf/latest/components/schemas/SidecarCreate.yaml new file mode 100644 index 0000000..73f3db0 --- /dev/null +++ b/apis/cf/latest/components/schemas/SidecarCreate.yaml @@ -0,0 +1,16 @@ +type: object +properties: + name: + type: string + description: Name of the sidecar + command: + type: string + description: Command to run for the sidecar + process_types: + type: array + items: + type: string + description: Process types that the sidecar applies to + memory_in_mb: + type: [integer, "null"] + description: Memory limit for the sidecar in MB diff --git a/apis/cf/latest/components/schemas/Space.yaml b/apis/cf/latest/components/schemas/Space.yaml index dc15368..be35698 100644 --- a/apis/cf/latest/components/schemas/Space.yaml +++ b/apis/cf/latest/components/schemas/Space.yaml @@ -1,45 +1,32 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the space - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the space - relationships: - type: object - properties: - organization: - $ref: './RelationshipToOne.yaml' - quota: - $ref: './RelationshipToOne.yaml' - description: Relationships for the space - links: - type: object - properties: - self: - $ref: './Link.yaml' - organization: - $ref: './Link.yaml' - features: - $ref: './Link.yaml' - apply_manifest: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - relationships - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the space + relationships: + type: object + properties: + organization: + $ref: './RelationshipToOne.yaml' + quota: + $ref: './RelationshipToOne.yaml' + description: Relationships for the space + links: + type: object + properties: + self: + $ref: './Link.yaml' + organization: + $ref: './Link.yaml' + features: + $ref: './Link.yaml' + apply_manifest: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/SpaceFeature.yaml b/apis/cf/latest/components/schemas/SpaceFeature.yaml index 6a6cb9f..28375c5 100644 --- a/apis/cf/latest/components/schemas/SpaceFeature.yaml +++ b/apis/cf/latest/components/schemas/SpaceFeature.yaml @@ -3,6 +3,6 @@ properties: name: type: string description: - type: string + type: [string, "null"] enabled: type: boolean diff --git a/apis/cf/latest/components/schemas/SpaceQuota.yaml b/apis/cf/latest/components/schemas/SpaceQuota.yaml index c0db52a..f51caf4 100644 --- a/apis/cf/latest/components/schemas/SpaceQuota.yaml +++ b/apis/cf/latest/components/schemas/SpaceQuota.yaml @@ -1,86 +1,73 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the space quota - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the space quota - apps: - type: object - properties: - total_memory_in_mb: - type: [integer, 'null'] - description: Total memory allowed for all apps in MB - per_process_memory_in_mb: - type: [integer, 'null'] - description: Maximum memory per process in MB - log_rate_limit_in_bytes_per_second: - type: [integer, 'null'] - description: Log rate limit in bytes per second - total_instances: - type: [integer, 'null'] - description: Total number of app instances allowed - per_app_tasks: - type: [integer, 'null'] - description: Maximum number of tasks per app - description: App limits for the space quota - services: - type: object - properties: - paid_services_allowed: - type: boolean - description: Whether paid services are allowed - total_service_instances: - type: [integer, 'null'] - description: Total number of service instances allowed - total_service_keys: - type: [integer, 'null'] - description: Total number of service keys allowed - description: Service limits for the space quota - routes: - type: object - properties: - total_routes: - type: [integer, 'null'] - description: Total number of routes allowed - total_reserved_ports: - type: [integer, 'null'] - description: Total number of reserved ports allowed - description: Route limits for the space quota - relationships: - type: object - properties: - organization: - $ref: './RelationshipToOne.yaml' - spaces: - $ref: './RelationshipToMany.yaml' - description: Relationships for the space quota - links: - type: object - properties: - self: - $ref: './Link.yaml' - organization: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - apps - - services - - routes - - relationships - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the space quota + apps: + type: object + properties: + total_memory_in_mb: + type: [integer, 'null'] + description: Total memory allowed for all apps in MB + per_process_memory_in_mb: + type: [integer, 'null'] + description: Maximum memory per process in MB + log_rate_limit_in_bytes_per_second: + type: [integer, 'null'] + description: Log rate limit in bytes per second + total_instances: + type: [integer, 'null'] + description: Total number of app instances allowed + per_app_tasks: + type: [integer, 'null'] + description: Maximum number of tasks per app + description: App limits for the space quota + services: + type: object + properties: + paid_services_allowed: + type: boolean + description: Whether paid services are allowed + total_service_instances: + type: [integer, 'null'] + description: Total number of service instances allowed + total_service_keys: + type: [integer, 'null'] + description: Total number of service keys allowed + description: Service limits for the space quota + routes: + type: object + properties: + total_routes: + type: [integer, 'null'] + description: Total number of routes allowed + total_reserved_ports: + type: [integer, 'null'] + description: Total number of reserved ports allowed + description: Route limits for the space quota + relationships: + type: object + properties: + organization: + $ref: './RelationshipToOne.yaml' + spaces: + $ref: './RelationshipToMany.yaml' + description: Relationships for the space quota + links: + type: object + properties: + self: + $ref: './Link.yaml' + organization: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - apps + - services + - routes + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/SpaceQuotaUpdate.yaml b/apis/cf/latest/components/schemas/SpaceQuotaUpdate.yaml new file mode 100644 index 0000000..9cb34fe --- /dev/null +++ b/apis/cf/latest/components/schemas/SpaceQuotaUpdate.yaml @@ -0,0 +1,49 @@ +type: object +properties: + name: + type: [string, "null"] + description: Name of the space quota + apps: + type: object + properties: + total_memory_in_mb: + type: [integer, "null"] + description: Total memory allowed for all apps in MB + per_process_memory_in_mb: + type: [integer, "null"] + description: Maximum memory per process in MB + log_rate_limit_in_bytes_per_second: + type: [integer, "null"] + description: Log rate limit in bytes per second + total_instances: + type: [integer, "null"] + description: Total number of app instances allowed + per_app_tasks: + type: [integer, "null"] + description: Maximum number of tasks per app + description: App limits for the space quota + services: + type: object + properties: + paid_services_allowed: + type: boolean + description: Whether paid services are allowed + total_service_instances: + type: [integer, "null"] + description: Total number of service instances allowed + total_service_keys: + type: [integer, "null"] + description: Total number of service keys allowed + description: Service limits for the space quota + routes: + type: object + properties: + total_routes: + type: [integer, "null"] + description: Total number of routes allowed + total_reserved_ports: + type: [integer, "null"] + description: Total number of reserved ports allowed + description: Route limits for the space quota + metadata: + $ref: ./Metadata.yaml diff --git a/apis/cf/latest/components/schemas/Stack.yaml b/apis/cf/latest/components/schemas/Stack.yaml index bb416df..a26a0c1 100644 --- a/apis/cf/latest/components/schemas/Stack.yaml +++ b/apis/cf/latest/components/schemas/Stack.yaml @@ -1,43 +1,30 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the stack - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - name: - type: string - description: Name of the stack - description: - type: string - description: Description of the stack - build_rootfs_image: - type: string - description: The filesystem root image for building - run_rootfs_image: - type: string - description: The filesystem root image for running - default: - type: boolean - description: Whether this is the default stack - links: - type: object - properties: - self: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - name - - description - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + name: + type: string + description: Name of the stack + description: + type: [string, "null"] + description: Description of the stack + build_rootfs_image: + type: string + description: The filesystem root image for building + run_rootfs_image: + type: string + description: The filesystem root image for running + default: + type: boolean + description: Whether this is the default stack + links: + type: object + properties: + self: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - name + - description + - links diff --git a/apis/cf/latest/components/schemas/Task.yaml b/apis/cf/latest/components/schemas/Task.yaml index d68f971..7e6d97c 100644 --- a/apis/cf/latest/components/schemas/Task.yaml +++ b/apis/cf/latest/components/schemas/Task.yaml @@ -17,16 +17,16 @@ allOf: sequence_id: type: integer memory_in_mb: - type: integer + type: [integer, "null"] disk_in_mb: - type: integer + type: [integer, "null"] droplet_guid: type: string result: type: object properties: failure_reason: - type: string + type: [string, "null"] metadata: $ref: './Metadata.yaml' links: diff --git a/apis/cf/latest/components/schemas/User.yaml b/apis/cf/latest/components/schemas/User.yaml index 0412695..5c9414e 100644 --- a/apis/cf/latest/components/schemas/User.yaml +++ b/apis/cf/latest/components/schemas/User.yaml @@ -1,30 +1,21 @@ type: object -properties: - guid: - type: string - description: Unique identifier for the user - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - username: - type: string - description: The username of the user - presentation_name: - type: string - description: The presentation name of the user - origin: - type: string - description: The origin of the user - metadata: - $ref: './Metadata.yaml' - links: - type: object - properties: - self: - $ref: './Link.yaml' - description: The URL to get this user +allOf: + - $ref: './BaseSchema.yaml' + - properties: + username: + type: [string, "null"] + description: The username of the user + presentation_name: + type: string + description: The presentation name of the user + origin: + type: [string, "null"] + description: The origin of the user + metadata: + $ref: './Metadata.yaml' + links: + type: object + properties: + self: + $ref: './Link.yaml' + description: The URL to get this user \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/UserCreate.yaml b/apis/cf/latest/components/schemas/UserCreate.yaml new file mode 100644 index 0000000..d4005ee --- /dev/null +++ b/apis/cf/latest/components/schemas/UserCreate.yaml @@ -0,0 +1,20 @@ +anyOf: + - type: object + properties: + guid: + type: string + description: Unique identifier for the user. For UAA users this will match the user ID of an existing UAA user's GUID; in the case of UAA clients, this will match the UAA client ID + metadata: + $ref: './Metadata.yaml' + required: [guid] + - type: object + properties: + username: + type: [string, "null"] + description: Username of the user to be created. This can only be provided together with origin + origin: + type: [string, "null"] + description: Origin of the user to be created. This can only be provided together with username and cannot be uaa + metadata: + $ref: './Metadata.yaml' + required: [username, origin] diff --git a/apis/cf/latest/components/schemas/UserProvidedServiceInstance.yaml b/apis/cf/latest/components/schemas/UserProvidedServiceInstance.yaml index b1b8ece..59d2c13 100644 --- a/apis/cf/latest/components/schemas/UserProvidedServiceInstance.yaml +++ b/apis/cf/latest/components/schemas/UserProvidedServiceInstance.yaml @@ -1,64 +1,51 @@ type: object -properties: - guid: - type: string - format: uuid - description: Unique identifier for the user-provided service instance - created_at: - type: string - format: date-time - description: The time with zone when the object was created - updated_at: - type: string - format: date-time - description: The time with zone when the object was last updated - type: - type: string - enum: - - user-provided - description: Type of service instance - name: - type: string - description: Name of the service instance - tags: - type: array - items: - type: string - description: Tags for the service instance - syslog_drain_url: - type: string - format: uri - description: URL for syslog drain - route_service_url: - type: string - format: uri - description: URL for route service - relationships: - type: object - properties: - space: - $ref: './RelationshipToOne.yaml' - description: Relationships for the service instance - links: - type: object - properties: - self: - $ref: './Link.yaml' - space: - $ref: './Link.yaml' - service_credential_bindings: - $ref: './Link.yaml' - service_route_bindings: - $ref: './Link.yaml' - credentials: - $ref: './Link.yaml' - metadata: - $ref: './Metadata.yaml' -required: - - guid - - created_at - - updated_at - - type - - name - - relationships - - links +allOf: + - $ref: './BaseSchema.yaml' + - properties: + type: + type: string + enum: + - user-provided + description: Type of service instance + name: + type: string + description: Name of the service instance + tags: + type: array + items: + type: string + description: Tags for the service instance + syslog_drain_url: + type: [string, "null"] + format: uri + description: URL for syslog drain + route_service_url: + type: [string, "null"] + format: uri + description: URL for route service + relationships: + type: object + properties: + space: + $ref: './RelationshipToOne.yaml' + description: Relationships for the service instance + links: + type: object + properties: + self: + $ref: './Link.yaml' + space: + $ref: './Link.yaml' + service_credential_bindings: + $ref: './Link.yaml' + service_route_bindings: + $ref: './Link.yaml' + credentials: + $ref: './Link.yaml' + metadata: + $ref: './Metadata.yaml' + required: + - type + - name + - relationships + - links \ No newline at end of file diff --git a/apis/cf/latest/components/schemas/UserProvidedServiceInstanceUpdate.yaml b/apis/cf/latest/components/schemas/UserProvidedServiceInstanceUpdate.yaml new file mode 100644 index 0000000..9f980d7 --- /dev/null +++ b/apis/cf/latest/components/schemas/UserProvidedServiceInstanceUpdate.yaml @@ -0,0 +1,24 @@ +type: object +properties: + name: + type: string + description: Name of the service instance + tags: + type: array + items: + type: string + description: Tags for the service instance + credentials: + type: object + description: Service credentials + syslog_drain_url: + type: [string, "null"] + format: uri + description: URL for syslog drain + route_service_url: + type: string + format: uri + description: URL for route service + metadata: + $ref: './Metadata.yaml' +description: Schema for updating a user-provided service instance diff --git a/apis/cf/latest/openapi.yaml b/apis/cf/latest/openapi.yaml index 4334b69..296df2c 100644 --- a/apis/cf/latest/openapi.yaml +++ b/apis/cf/latest/openapi.yaml @@ -34,6 +34,8 @@ tags: description: "Feature flags are runtime flags that enable or disable functionality on the API." - name: Info description: "Info endpoints expose Cloud Controller configuration information." + - name: Internal + description: "Internal endpoints for system monitoring and metrics." - name: Isolation Segments description: "Isolation Segments provide dedicated pools of resources to which apps can be deployed to isolate workloads." - name: Jobs @@ -373,6 +375,8 @@ paths: $ref: './paths/Apps.yaml#/~1v3~1apps~1{guid}~1actions~1stop' /v3/apps/{guid}/actions/restart: $ref: './paths/Apps.yaml#/~1v3~1apps~1{guid}~1actions~1restart' + /v3/apps/{guid}/droplets: + $ref: './paths/Apps.yaml#/~1v3~1apps~1{guid}~1droplets' /v3/apps/{guid}/droplets/current: $ref: './paths/Apps.yaml#/~1v3~1apps~1{guid}~1droplets~1current' /v3/apps/{guid}/relationships/current_droplet: @@ -561,6 +565,8 @@ paths: $ref: './paths/Tasks.yaml#/~1v3~1tasks~1{guid}' /v3/tasks/{guid}/actions/cancel: $ref: './paths/Tasks.yaml#/~1v3~1tasks~1{guid}~1actions~1cancel' + /v3/tasks/{guid}/cancel: + $ref: './paths/Tasks.yaml#/~1v3~1tasks~1{guid}~1cancel' /v3/users: $ref: './paths/Users.yaml#/~1v3~1users' /v3/users/{guid}: diff --git a/apis/cf/latest/paths/AdminClearBuildpackCache.yaml b/apis/cf/latest/paths/AdminClearBuildpackCache.yaml index 5cea3ea..53fffbc 100644 --- a/apis/cf/latest/paths/AdminClearBuildpackCache.yaml +++ b/apis/cf/latest/paths/AdminClearBuildpackCache.yaml @@ -15,5 +15,7 @@ post: format: uri '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' diff --git a/apis/cf/latest/paths/AppUsageEvents.yaml b/apis/cf/latest/paths/AppUsageEvents.yaml index 5ea264b..95b5a8c 100644 --- a/apis/cf/latest/paths/AppUsageEvents.yaml +++ b/apis/cf/latest/paths/AppUsageEvents.yaml @@ -4,67 +4,88 @@ description: Retrieve all app usage events. operationId: listAppUsageEvents tags: - - App Usage Events + - App Usage Events parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: after_guid - in: query - schema: + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: after_guid + in: query + schema: + type: string + description: Filters out events before and including the event with the given + guid + - name: guids + in: query + schema: + type: array + items: type: string - description: Filters out events before and including the event with the given guid - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of usage event guids to filter by - - $ref: ../components/parameters/CreatedAts.yaml + description: Comma-delimited list of usage event guids to filter by + - $ref: '../components/parameters/CreatedAts.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/AppUsageEventList.yaml + $ref: '../components/schemas/AppUsageEventList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/app_usage_events/{guid}: get: summary: Get an app usage event description: Retrieve a specific app usage event. operationId: getAppUsageEvent tags: - - App Usage Events + - App Usage Events parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/AppUsageEvent.yaml + $ref: '../components/schemas/AppUsageEvent.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/app_usage_events/actions/destructively_purge_all_and_reseed: post: summary: Purge and seed app usage events - description: |- - Destroys all existing events. Populates new usage events, one for each + description: 'Destroys all existing events. Populates new usage events, one for + each + started app. All populated events will have a created_at value of + current time. There is the potential race condition if apps are + currently being started, stopped, or scaled. The seeded usage events - will have the same guid as the app. + + will have the same guid as the app.' operationId: purgeAndSeedAppUsageEvents tags: - - App Usage Events + - App Usage Events responses: '200': description: OK @@ -72,3 +93,15 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/Apps.yaml b/apis/cf/latest/paths/Apps.yaml index c5396a8..9e583a1 100644 --- a/apis/cf/latest/paths/Apps.yaml +++ b/apis/cf/latest/paths/Apps.yaml @@ -4,68 +4,68 @@ description: Retrieve all apps the user has access to. operationId: listApps tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app GUIDs to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app names to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space GUIDs to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization GUIDs to filter by - - name: stacks - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of stack names to filter by - - name: lifecycle_type - in: query - schema: + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app GUIDs to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app names to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space GUIDs to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization GUIDs to filter by + - name: stacks + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of stack names to filter by + - name: lifecycle_type + in: query + schema: + type: string + enum: + - buildpack + - cnb + - docker + description: Lifecycle type to filter by + - name: include + in: query + schema: + type: array + items: type: string enum: - - buildpack - - cnb - - docker - description: Lifecycle type to filter by - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - space - - space.organization - description: Optionally include a list of unique related resources in the response + - space + - space.organization + description: Optionally include a list of unique related resources in the response responses: '200': description: OK @@ -79,12 +79,22 @@ $ref: '../components/responses/Forbidden.yaml' '500': $ref: '../components/responses/500.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create an app description: Creates a new app. operationId: createApp tags: - - Apps + - Apps requestBody: $ref: '../components/requestBodies/AppCreateRequestBody.yaml' responses: @@ -121,24 +131,31 @@ uniqueness_error: value: errors: - - code: 10016 - title: CF-UniquenessError - detail: The given app name is already taken in the targeted space + - code: 10016 + title: CF-UniquenessError + detail: The given app name is already taken in the targeted space feature_disabled: value: errors: - - code: 330002 - title: CF-FeatureDisabled - detail: Some feature flag must be enabled by the Cloud Foundry admin in order to push the app as is. + - code: 330002 + title: CF-FeatureDisabled + detail: Some feature flag must be enabled by the Cloud Foundry + admin in order to push the app as is. + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/apps/{guid}: get: summary: Get an app description: Retrieve a specific app. operationId: getApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved app @@ -161,14 +178,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update an app description: Update an app. operationId: updateApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/AppUpdateRequestBody.yaml' responses: @@ -195,14 +214,24 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete an app description: Delete an app. operationId: deleteApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Successfully deleted app @@ -216,15 +245,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/apps/{guid}/actions/start: post: summary: Start an app description: Start an app. operationId: startApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully started app @@ -236,15 +271,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/actions/stop: post: summary: Stop an app description: Stop an app. operationId: stopApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully stopped app @@ -256,15 +295,22 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/actions/restart: post: summary: Restart an app - description: This endpoint will synchronously stop and start an application. Unlike the start and stop actions, this endpoint will error if the app is not successfully stopped in the runtime. For restarting applications without downtime, see the deployments resource. + description: This endpoint will synchronously stop and start an application. Unlike + the start and stop actions, this endpoint will error if the app is not successfully + stopped in the runtime. For restarting applications without downtime, see the + deployments resource. operationId: restartApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully restarted app @@ -276,15 +322,67 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' +/v3/apps/{guid}/droplets: + get: + summary: List droplets for an app + description: Retrieve all droplets belonging to an app. + operationId: listAppDroplets + tags: + - Apps + - Droplets + parameters: + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of droplet guids to filter by + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - AWAITING_UPLOAD + - PROCESSING_UPLOAD + - STAGED + - COPYING + - FAILED + - EXPIRED + description: Comma-delimited list of droplet states to filter by + responses: + '200': + description: List of droplets for the app + content: + application/json: + schema: + $ref: '../components/schemas/DropletList.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' /v3/apps/{guid}/droplets/current: get: summary: Get current droplet description: Get the current droplet for an app. operationId: getCurrentDropletForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved droplet @@ -296,15 +394,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/relationships/current_droplet: get: summary: Get current droplet association for an app description: This endpoint retrieves the current droplet relationship for an app. operationId: getCurrentDropletAssociationForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -316,14 +416,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Set current droplet - description: Set the current droplet for an app. The current droplet is the droplet that the app will use when running. + description: Set the current droplet for an app. The current droplet is the droplet + that the app will use when running. operationId: setCurrentDropletForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Droplet relationship object that needs to be set required: true @@ -335,7 +438,7 @@ data: $ref: '../components/schemas/Relationship.yaml' required: - - data + - data description: Request schema for setting the current droplet responses: '200': @@ -348,15 +451,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/env: get: summary: Get environment for an app - description: Retrieve the environment variables that will be provided to an app at runtime. It will include environment variables for Environment Variable Groups and Service Bindings. + description: Retrieve the environment variables that will be provided to an app + at runtime. It will include environment variables for Environment Variable Groups + and Service Bindings. operationId: getEnvForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -368,15 +477,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/environment_variables: get: summary: Get environment variables for an app - description: Retrieve the environment variables that are associated with the given app. For the entire list of environment variables that will be available to the app at runtime, see the env endpoint. + description: Retrieve the environment variables that are associated with the given + app. For the entire list of environment variables that will be available to + the app at runtime, see the env endpoint. operationId: getEnvironmentVariablesForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -388,14 +501,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update environment variables for an app - description: Update the environment variables associated with the given app. The variables given in the request will be merged with the existing app environment variables. Any requested variables with a value of `null` will be removed from the app. Environment variable names may not start with VCAP_. PORT is not a valid environment variable. The updated environment variables will not take effect until the app is restarted. + description: Update the environment variables associated with the given app. The + variables given in the request will be merged with the existing app environment + variables. Any requested variables with a value of `null` will be removed from + the app. Environment variable names may not start with VCAP_. PORT is not a + valid environment variable. The updated environment variables will not take + effect until the app is restarted. operationId: updateEnvironmentVariablesForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: @@ -406,7 +526,8 @@ type: object additionalProperties: type: string - description: Environment variables to inject; keys and values must be strings + description: Environment variables to inject; keys and values must + be strings responses: '200': description: OK @@ -418,15 +539,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/permissions: get: summary: Get permissions for an app - description: Get the current user’s permissions for the given app. If a user can see an app, then they can see its basic data. Only admin, read-only admins, and space developers can read sensitive data. + description: Get the current user’s permissions for the given app. If a user can + see an app, then they can see its basic data. Only admin, read-only admins, + and space developers can read sensitive data. operationId: getPermissionsForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -438,15 +565,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/ssh_enabled: get: summary: Get SSH enabled for an app - description: Returns if an application’s runtime environment will accept ssh connections. If ssh is disabled, the `reason` field will describe whether it is disabled globally, at the space level, or at the app level. + description: Returns if an application’s runtime environment will accept ssh connections. + If ssh is disabled, the `reason` field will describe whether it is disabled + globally, at the space level, or at the app level. operationId: getSshEnabledForApp tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -458,15 +589,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/actions/clear_buildpack_cache: post: summary: Clear buildpack cache for application - description: This endpoint will delete the buildpack cache for a specified app. The buildpack cache is used during staging by buildpacks as a way to cache certain resources, e.g. downloaded Ruby gems. A user may want to use this endpoint when an app doesn’t stage anymore due to out-of-disk caused by a large buildpack cache content. + description: This endpoint will delete the buildpack cache for a specified app. + The buildpack cache is used during staging by buildpacks as a way to cache certain + resources, e.g. downloaded Ruby gems. A user may want to use this endpoint when + an app doesn’t stage anymore due to out-of-disk caused by a large buildpack + cache content. operationId: clearBuildpackCacheForApplication tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -474,15 +611,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/features: get: summary: List app features description: This endpoint retrieves the list of features for the specified app. operationId: listAppFeatures tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -490,25 +631,27 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/features/{name}: get: summary: Get an app feature description: Get an app feature. operationId: getAppFeature tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: name - in: path - required: true - schema: - type: string - enum: - - ssh - - revisions - - service-binding-k8s - - file-based-vcap-services + - $ref: '../components/parameters/Guid.yaml' + - name: name + in: path + required: true + schema: + type: string + enum: + - ssh + - revisions + - service-binding-k8s + - file-based-vcap-services responses: '200': description: OK @@ -516,24 +659,26 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update an app feature description: Update an app feature. operationId: updateAppFeature tags: - - Apps + - Apps parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: name - in: path - required: true - schema: - type: string - enum: - - ssh - - revisions - - service-binding-k8s - - file-based-vcap-services + - $ref: '../components/parameters/Guid.yaml' + - name: name + in: path + required: true + schema: + type: string + enum: + - ssh + - revisions + - service-binding-k8s + - file-based-vcap-services requestBody: content: application/json: @@ -544,7 +689,13 @@ responses: '200': description: OK + '400': + $ref: '../components/responses/BadRequest.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/AuditEvents.yaml b/apis/cf/latest/paths/AuditEvents.yaml index b87bf03..0c9f61c 100644 --- a/apis/cf/latest/paths/AuditEvents.yaml +++ b/apis/cf/latest/paths/AuditEvents.yaml @@ -4,187 +4,204 @@ description: Retrieve all audit events the user has access to. operationId: listAuditEvents tags: - - Audit Events + - Audit Events parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - name: types - in: query - schema: - type: array - items: - type: string - enum: - - audit.app.apply_manifest - - audit.app.build.create - - audit.app.copy-bits - - audit.app.create - - audit.app.delete-request - - audit.app.deployment.cancel - - audit.app.deployment.create - - audit.app.deployment.continue - - audit.app.droplet.create - - audit.app.droplet.delete - - audit.app.droplet.download - - audit.app.droplet.mapped - - audit.app.droplet.upload - - audit.app.environment.show - - audit.app.environment_variables.show - - audit.app.map-route - - audit.app.package.create - - audit.app.package.delete - - audit.app.package.download - - audit.app.package.upload - - audit.app.process.crash - - audit.app.process.create - - audit.app.process.delete - - audit.app.process.ready - - audit.app.process.not-ready - - audit.app.process.rescheduling - - audit.app.process.scale - - audit.app.process.terminate_instance - - audit.app.process.update - - audit.app.restage - - audit.app.restart - - audit.app.revision.create - - audit.app.revision.environment_variables.show - - audit.app.ssh-authorized - - audit.app.ssh-unauthorized - - audit.app.start - - audit.app.stop - - audit.app.task.cancel - - audit.app.task.create - - audit.app.unmap-route - - audit.app.update - - audit.app.upload-bits - - audit.organization.create - - audit.organization.delete-request - - audit.organization.update - - audit.route.create - - audit.route.delete-request - - audit.route.share - - audit.route.transfer-owner - - audit.route.unshare - - audit.route.update - - audit.service.create - - audit.service.delete - - audit.service.update - - audit.service_binding.create - - audit.service_binding.delete - - audit.service_binding.show - - audit.service_binding.start_create - - audit.service_binding.start_delete - - audit.service_binding.update - - audit.service_broker.create - - audit.service_broker.delete - - audit.service_broker.update - - audit.service_dashboard_client.create - - audit.service_dashboard_client.delete - - audit.service_instance.bind_route - - audit.service_instance.create - - audit.service_instance.delete - - audit.service_instance.purge - - audit.service_instance.share - - audit.service_instance.show - - audit.service_instance.start_create - - audit.service_instance.start_delete - - audit.service_instance.start_update - - audit.service_instance.unbind_route - - audit.service_instance.unshare - - audit.service_instance.update - - audit.service_key.create - - audit.service_key.delete - - audit.service_key.show - - audit.service_key.start_create - - audit.service_key.start_delete - - audit.service_key.update - - audit.service_plan.create - - audit.service_plan.delete - - audit.service_plan.update - - audit.service_plan_visibility.create - - audit.service_plan_visibility.delete - - audit.service_plan_visibility.update - - audit.service_route_binding.create - - audit.service_route_binding.delete - - audit.service_route_binding.start_create - - audit.service_route_binding.start_delete - - audit.service_route_binding.update - - audit.space.create - - audit.space.delete-request - - audit.space.update - - audit.user.organization_auditor_add - - audit.user.organization_auditor_remove - - audit.user.organization_billing_manager_add - - audit.user.organization_billing_manager_remove - - audit.user.organization_manager_add - - audit.user.organization_manager_remove - - audit.user.organization_user_add - - audit.user.organization_user_remove - - audit.user.space_auditor_add - - audit.user.space_auditor_remove - - audit.user.space_developer_add - - audit.user.space_developer_remove - - audit.user.space_manager_add - - audit.user.space_manager_remove - - audit.user.space_supporter_add - - audit.user.space_supporter_remove - - audit.user_provided_service_instance.create - - audit.user_provided_service_instance.delete - - audit.user_provided_service_instance.show - - audit.user_provided_service_instance.update - - app.crash - - blob.remove_orphan - description: Comma-delimited list of event types to filter by - - name: target_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of target guids to filter by. Also supports filtering by exclusion. - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - name: types + in: query + schema: + type: array + items: + type: string + enum: + - audit.app.apply_manifest + - audit.app.build.create + - audit.app.copy-bits + - audit.app.create + - audit.app.delete-request + - audit.app.deployment.cancel + - audit.app.deployment.create + - audit.app.deployment.continue + - audit.app.droplet.create + - audit.app.droplet.delete + - audit.app.droplet.download + - audit.app.droplet.mapped + - audit.app.droplet.upload + - audit.app.environment.show + - audit.app.environment_variables.show + - audit.app.map-route + - audit.app.package.create + - audit.app.package.delete + - audit.app.package.download + - audit.app.package.upload + - audit.app.process.crash + - audit.app.process.create + - audit.app.process.delete + - audit.app.process.ready + - audit.app.process.not-ready + - audit.app.process.rescheduling + - audit.app.process.scale + - audit.app.process.terminate_instance + - audit.app.process.update + - audit.app.restage + - audit.app.restart + - audit.app.revision.create + - audit.app.revision.environment_variables.show + - audit.app.ssh-authorized + - audit.app.ssh-unauthorized + - audit.app.start + - audit.app.stop + - audit.app.task.cancel + - audit.app.task.create + - audit.app.unmap-route + - audit.app.update + - audit.app.upload-bits + - audit.organization.create + - audit.organization.delete-request + - audit.organization.update + - audit.route.create + - audit.route.delete-request + - audit.route.share + - audit.route.transfer-owner + - audit.route.unshare + - audit.route.update + - audit.service.create + - audit.service.delete + - audit.service.update + - audit.service_binding.create + - audit.service_binding.delete + - audit.service_binding.show + - audit.service_binding.start_create + - audit.service_binding.start_delete + - audit.service_binding.update + - audit.service_broker.create + - audit.service_broker.delete + - audit.service_broker.update + - audit.service_dashboard_client.create + - audit.service_dashboard_client.delete + - audit.service_instance.bind_route + - audit.service_instance.create + - audit.service_instance.delete + - audit.service_instance.purge + - audit.service_instance.share + - audit.service_instance.show + - audit.service_instance.start_create + - audit.service_instance.start_delete + - audit.service_instance.start_update + - audit.service_instance.unbind_route + - audit.service_instance.unshare + - audit.service_instance.update + - audit.service_key.create + - audit.service_key.delete + - audit.service_key.show + - audit.service_key.start_create + - audit.service_key.start_delete + - audit.service_key.update + - audit.service_plan.create + - audit.service_plan.delete + - audit.service_plan.update + - audit.service_plan_visibility.create + - audit.service_plan_visibility.delete + - audit.service_plan_visibility.update + - audit.service_route_binding.create + - audit.service_route_binding.delete + - audit.service_route_binding.start_create + - audit.service_route_binding.start_delete + - audit.service_route_binding.update + - audit.space.create + - audit.space.delete-request + - audit.space.update + - audit.user.organization_auditor_add + - audit.user.organization_auditor_remove + - audit.user.organization_billing_manager_add + - audit.user.organization_billing_manager_remove + - audit.user.organization_manager_add + - audit.user.organization_manager_remove + - audit.user.organization_user_add + - audit.user.organization_user_remove + - audit.user.space_auditor_add + - audit.user.space_auditor_remove + - audit.user.space_developer_add + - audit.user.space_developer_remove + - audit.user.space_manager_add + - audit.user.space_manager_remove + - audit.user.space_supporter_add + - audit.user.space_supporter_remove + - audit.user_provided_service_instance.create + - audit.user_provided_service_instance.delete + - audit.user_provided_service_instance.show + - audit.user_provided_service_instance.update + - app.crash + - blob.remove_orphan + description: Comma-delimited list of event types to filter by + - name: target_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of target guids to filter by. Also supports + filtering by exclusion. + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/AuditEventList.yaml + $ref: '../components/schemas/AuditEventList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/audit_events/{guid}: get: summary: Get an audit event description: Retrieve a specific audit event. operationId: getAuditEvent tags: - - Audit Events + - Audit Events parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/AuditEvent.yaml + $ref: '../components/schemas/AuditEvent.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Buildpacks.yaml b/apis/cf/latest/paths/Buildpacks.yaml index 1e00d5e..9b1df1f 100644 --- a/apis/cf/latest/paths/Buildpacks.yaml +++ b/apis/cf/latest/paths/Buildpacks.yaml @@ -4,30 +4,32 @@ description: Retrieve all buildpacks. operationId: listBuildpacks tags: - - Buildpacks + - Buildpacks parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: names - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of buildpack names to filter by - - name: stacks - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of stacks to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of buildpack names to filter by + + ' + - name: stacks + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of stacks to filter by + + ' responses: '200': description: OK @@ -41,12 +43,22 @@ $ref: '../components/responses/Forbidden.yaml' '500': $ref: '../components/responses/500.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a buildpack description: Create a buildpack. operationId: createBuildpack tags: - - Buildpacks + - Buildpacks requestBody: $ref: '../components/requestBodies/BuildpackCreateRequestBody.yaml' responses: @@ -58,15 +70,23 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/buildpacks/{guid}: get: summary: Get a buildpack description: Retrieve a buildpack. operationId: getBuildpack tags: - - Buildpacks + - Buildpacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': $ref: '../components/responses/BuildpackGetResponse.yaml' @@ -83,9 +103,9 @@ description: Update a buildpack. operationId: updateBuildpack tags: - - Buildpacks + - Buildpacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/BuildpackUpdateRequestBody.yaml' responses: @@ -105,14 +125,20 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a buildpack description: Delete a buildpack. operationId: deleteBuildpack tags: - - Buildpacks + - Buildpacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -122,20 +148,26 @@ schema: type: string format: uri - '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/buildpacks/{guid}/upload: post: summary: Upload buildpack bits - description: Upload a zip file containing a Cloud Foundry compatible buildpack. The file must be sent as part of a multi-part form. + description: Upload a zip file containing a Cloud Foundry compatible buildpack. + The file must be sent as part of a multi-part form. operationId: uploadBuildpack tags: - - Buildpacks + - Buildpacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: The buildpack file to be uploaded required: true @@ -185,3 +217,5 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Builds.yaml b/apis/cf/latest/paths/Builds.yaml index 549235b..bd3dd3a 100644 --- a/apis/cf/latest/paths/Builds.yaml +++ b/apis/cf/latest/paths/Builds.yaml @@ -4,39 +4,39 @@ description: Retrieve all builds. operationId: listBuilds tags: - - Builds + - Builds parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - STAGING - - STAGED - - FAILED - description: Comma-delimited list of build states to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app GUIDs to filter by - - name: package_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of package GUIDs to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - STAGING + - STAGED + - FAILED + description: Comma-delimited list of build states to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app GUIDs to filter by + - name: package_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of package GUIDs to filter by responses: '200': description: OK @@ -46,12 +46,26 @@ $ref: '../components/schemas/BuildList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a build description: Create a build. operationId: createBuild tags: - - Builds + - Builds requestBody: description: Build object that needs to be created required: true @@ -72,11 +86,12 @@ description: Disk space in MB allocated for staging of the build staging_log_rate_limit_bytes_per_second: type: integer - description: Log rate limit in bytes per second allocated for staging of the build + description: Log rate limit in bytes per second allocated for staging + of the build metadata: $ref: '../components/schemas/Metadata.yaml' required: - - package + - package description: Request schema for creating a build responses: '201': @@ -97,15 +112,23 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/builds/{guid}: get: summary: Get a build description: Retrieve a build. operationId: getBuild tags: - - Builds + - Builds parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved build @@ -128,32 +151,70 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + patch: + summary: Update a build + description: Update a build. + operationId: updateBuild + tags: + - Builds + parameters: + - $ref: '../components/parameters/Guid.yaml' + requestBody: + content: + application/json: + schema: + $ref: '../components/schemas/BuildUpdate.yaml' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/Build.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/apps/{guid}/builds: get: summary: List builds for an app description: Retrieve all builds for an app. operationId: listAppBuilds tags: - - Builds + - Builds parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - STAGING - - STAGED - - FAILED - description: Comma-delimited list of build states to filter by - - $ref: '../components/parameters/LabelSelector.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - STAGING + - STAGED + - FAILED + description: Comma-delimited list of build states to filter by + - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK @@ -165,14 +226,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a build description: Update a build. - operationId: updateBuild + operationId: updateBuildViaApp tags: - - Builds + - Builds parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Build object that needs to be updated required: true @@ -195,3 +258,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Deployments.yaml b/apis/cf/latest/paths/Deployments.yaml index 014c5f5..b27b47b 100644 --- a/apis/cf/latest/paths/Deployments.yaml +++ b/apis/cf/latest/paths/Deployments.yaml @@ -4,52 +4,52 @@ description: Retrieve all deployments. operationId: listDeployments tags: - - Deployments + - Deployments parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app GUIDs to filter by - - name: states - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of states to filter by - - name: status_reasons - in: query - schema: - type: array - items: - type: string - enum: - - DEPLOYING - - PAUSED - - CANCELING - - DEPLOYED - - CANCELED - - SUPERSEDED - description: Comma-delimited list of status reasons to filter by - - name: status_values - in: query - schema: - type: array - items: - type: string - enum: - - ACTIVE - - FINALIZED - description: Comma-delimited list of status values to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app GUIDs to filter by + - name: states + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of states to filter by + - name: status_reasons + in: query + schema: + type: array + items: + type: string + enum: + - DEPLOYING + - PAUSED + - CANCELING + - DEPLOYED + - CANCELED + - SUPERSEDED + description: Comma-delimited list of status reasons to filter by + - name: status_values + in: query + schema: + type: array + items: + type: string + enum: + - ACTIVE + - FINALIZED + description: Comma-delimited list of status values to filter by responses: '200': description: OK @@ -61,12 +61,26 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a deployment - description: When you create a new deployment you can either provide a specific droplet or revision to deploy. If no revision or droplet is provided, the droplet associated with the app is deployed. + description: When you create a new deployment you can either provide a specific + droplet or revision to deploy. If no revision or droplet is provided, the droplet + associated with the app is deployed. operationId: createDeployment tags: - - Deployments + - Deployments requestBody: description: Deployment object that needs to be created required: true @@ -80,8 +94,8 @@ strategy: type: string enum: - - rolling - - canary + - rolling + - canary droplet: $ref: '../components/schemas/Relationship.yaml' revision: @@ -117,15 +131,23 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/deployments/{guid}: get: summary: Get a deployment description: Retrieve a deployment. operationId: getDeployment tags: - - Deployments + - Deployments parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved deployment @@ -153,14 +175,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a deployment description: Update a deployment. operationId: updateDeployment tags: - - Deployments + - Deployments parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Deployment object that needs to be updated required: true @@ -183,15 +207,27 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/deployments/{guid}/actions/cancel: post: summary: Cancel a deployment description: Cancel a deployment. operationId: cancelDeployment tags: - - Deployments + - Deployments parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully canceled deployment @@ -203,15 +239,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/deployments/{guid}/actions/continue: post: summary: Continue a deployment description: Continue a deployment. operationId: continueDeployment tags: - - Deployments + - Deployments parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully continued deployment @@ -223,3 +263,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Domains.yaml b/apis/cf/latest/paths/Domains.yaml index 6c055e9..e5a47b0 100644 --- a/apis/cf/latest/paths/Domains.yaml +++ b/apis/cf/latest/paths/Domains.yaml @@ -4,35 +4,35 @@ description: Retrieve all domains the user has access to. operationId: listDomains tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of GUIDs to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of domain names to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of owning organization GUIDs to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of GUIDs to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of domain names to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of owning organization GUIDs to filter by responses: '200': description: OK @@ -44,12 +44,24 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a domain description: Create a domain. operationId: createDomain tags: - - Domains + - Domains requestBody: $ref: '../components/requestBodies/DomainCreateRequestBody.yaml' responses: @@ -64,22 +76,31 @@ operationId: getOrganization parameters: guid: $response.body#/relationships/organization/data/guid - description: Retrieve the organization for this domain (private domains only) + description: Retrieve the organization for this domain (private domains + only) '400': $ref: '../components/responses/BadRequest.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '500': + $ref: '../components/responses/500.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/domains/{guid}: get: summary: Get a domain description: Retrieve a domain. operationId: getDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved domain @@ -92,19 +113,22 @@ operationId: getOrganization parameters: guid: $response.body#/relationships/organization/data/guid - description: Retrieve the organization for this domain (private domains only) + description: Retrieve the organization for this domain (private domains + only) '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a domain description: Update a domain. operationId: updateDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Domain object that needs to be updated required: true @@ -125,16 +149,28 @@ $ref: '../components/schemas/Domain.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a domain description: Delete a domain. operationId: deleteDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -144,20 +180,27 @@ schema: type: string format: uri - '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/domains/{guid}/relationships/shared_organizations: post: summary: Share a domain - description: This endpoint shares an organization-scoped domain to other organizations specified by a list of organization guids. This will allow any of the other organizations to use the organization-scoped domain. + description: This endpoint shares an organization-scoped domain to other organizations + specified by a list of organization guids. This will allow any of the other + organizations to use the organization-scoped domain. operationId: shareDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: List of organizations to share the domain with required: true @@ -170,7 +213,8 @@ type: array items: $ref: '../components/schemas/Relationship.yaml' - description: Organization relationships; each organization will be entitled to manage this isolation segment + description: Organization relationships; each organization will be entitled + to manage this isolation segment responses: '200': description: Successfully shared domain @@ -193,28 +237,34 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/organizations/{guid}/domains: get: summary: List domains for an organization - description: |- - Retrieve all domains available in an organization for the current user. This will return unscoped domains (those without an owning organization), domains that are scoped to the given organization (owned by the given organization), and domains that have been shared with the organization. + description: 'Retrieve all domains available in an organization for the current + user. This will return unscoped domains (those without an owning organization), + domains that are scoped to the given organization (owned by the given organization), + and domains that have been shared with the organization. + - To retrieve the default domain for an organization, use the [get default domain](#get-default-domain) endpoint. + To retrieve the default domain for an organization, use the [get default domain](#get-default-domain) + endpoint.' operationId: listDomainsForOrganization tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of domain names to filter by + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of domain names to filter by responses: '200': description: OK @@ -226,30 +276,34 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/domains/{guid}/route_reservations: get: summary: Check reserved routes for a domain - description: Check if a specific route for a domain exists, regardless of the user’s visibility for the route in case the route belongs to a space the user does not belong to. + description: Check if a specific route for a domain exists, regardless of the + user’s visibility for the route in case the route belongs to a space the user + does not belong to. operationId: checkReservedRoutesForDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: host - in: query - schema: - type: string - description: Hostname to filter by - - name: path - in: query - schema: - type: string - description: Path to filter by - - name: port - in: query - schema: - type: integer - description: Port to filter by + - $ref: '../components/parameters/Guid.yaml' + - name: host + in: query + schema: + type: string + description: Hostname to filter by + - name: path + in: query + schema: + type: string + description: Path to filter by + - name: port + in: query + schema: + type: integer + description: Port to filter by responses: '200': description: OK @@ -264,22 +318,26 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/domains/{guid}/relationships/shared_organizations/{org_guid}: delete: summary: Unshare a domain - description: This endpoint removes an organization from the list of organizations an organization-scoped domain is shared with. This prevents the organization from using the organization-scoped domain. + description: This endpoint removes an organization from the list of organizations + an organization-scoped domain is shared with. This prevents the organization + from using the organization-scoped domain. operationId: unshareDomain tags: - - Domains + - Domains parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: org_guid - in: path - required: true - schema: - type: string - format: uuid - description: The GUID of the organization to unshare the domain from + - $ref: '../components/parameters/Guid.yaml' + - name: org_guid + in: path + required: true + schema: + type: string + format: uuid + description: The GUID of the organization to unshare the domain from responses: '204': description: Successfully unshared domain @@ -289,3 +347,5 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Droplets.yaml b/apis/cf/latest/paths/Droplets.yaml index c2340f9..21b364a 100644 --- a/apis/cf/latest/paths/Droplets.yaml +++ b/apis/cf/latest/paths/Droplets.yaml @@ -4,61 +4,66 @@ description: Retrieve all droplets. operationId: listDroplets tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of droplet GUIDs to filter by - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - AWAITING_UPLOAD - - PROCESSING_UPLOAD - - STAGED - - COPYING - - FAILED - - EXPIRED - description: > - Comma-delimited list of droplet states to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of app GUIDs to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of space GUIDs to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: > - Comma-delimited list of organization GUIDs to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of droplet GUIDs to filter by + + ' + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - AWAITING_UPLOAD + - PROCESSING_UPLOAD + - STAGED + - COPYING + - FAILED + - EXPIRED + description: 'Comma-delimited list of droplet states to filter by + + ' + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of app GUIDs to filter by + + ' + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of space GUIDs to filter by + + ' + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: 'Comma-delimited list of organization GUIDs to filter by + + ' responses: '200': description: OK @@ -72,12 +77,23 @@ $ref: '../components/responses/Forbidden.yaml' '500': $ref: '../components/responses/500.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a droplet - description: This endpoint is only for creating a droplet without a package. To create a droplet based on a package, see [Create a build](#create-a-build). + description: This endpoint is only for creating a droplet without a package. To + create a droplet based on a package, see [Create a build](#create-a-build). operationId: createDroplet tags: - - Droplets + - Droplets requestBody: $ref: '../components/requestBodies/DropletCreateRequestBody.yaml' responses: @@ -95,15 +111,29 @@ description: Retrieve the app for this droplet '400': $ref: '../components/responses/BadRequest.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/droplets/{guid}: get: summary: Get a droplet description: Retrieve a droplet. operationId: getDroplet tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Droplet retrieved @@ -119,14 +149,18 @@ description: Retrieve the app for this droplet '400': $ref: '../components/responses/BadRequest.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' patch: summary: Update a droplet description: Update a droplet. operationId: updateDroplet tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Droplet object that needs to be updated required: true @@ -141,7 +175,7 @@ type: string description: Image reference where the built complete image was stored required: - - image + - image description: Request schema for updating a droplet responses: '200': @@ -160,33 +194,63 @@ application/json: schema: $ref: '../components/schemas/Error.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a droplet description: Delete a droplet. operationId: deleteDroplet tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: - '204': - description: Successfully deleted droplet + '202': + description: Accepted + headers: + Location: + description: URL of the job that is deleting the droplet + schema: + type: string + format: uri + content: + application/json: + schema: + $ref: '../components/schemas/Job.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/droplets/{guid}/download: get: summary: Download droplet bits - description: |- - Download a gzip compressed tarball file containing a Cloud Foundry compatible droplet. - When using a remote blobstore, such as AWS, the response is a redirect to the actual location of the bits. If the client is automatically following redirects, then the OAuth token that was used to communicate with Cloud Controller will be relayed on the new redirect request. Some blobstores may reject the request in that case. Clients may need to follow the redirect without including the OAuth token. - Only droplets that are in the `STAGED` state and have lifecycle type `buildpack` can be downloaded. + description: 'Download a gzip compressed tarball file containing a Cloud Foundry + compatible droplet. + + When using a remote blobstore, such as AWS, the response is a redirect to the + actual location of the bits. If the client is automatically following redirects, + then the OAuth token that was used to communicate with Cloud Controller will + be relayed on the new redirect request. Some blobstores may reject the request + in that case. Clients may need to follow the redirect without including the + OAuth token. + + Only droplets that are in the `STAGED` state and have lifecycle type `buildpack` + can be downloaded.' operationId: downloadDroplet tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -204,15 +268,22 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' /v3/droplets/{guid}/upload: post: summary: Upload droplet bits - description: Upload a gzip compressed tarball file containing a Cloud Foundry compatible droplet. The file must be sent as part of a multi-part form. + description: Upload a gzip compressed tarball file containing a Cloud Foundry + compatible droplet. The file must be sent as part of a multi-part form. operationId: uploadDroplet tags: - - Droplets + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: The droplet file to be uploaded required: true @@ -238,6 +309,24 @@ properties: value: type: string + application/json: + schema: + type: object + properties: + resources: + type: array + items: + type: object + properties: + path: + type: string + size_in_bytes: + type: integer + checksum: + type: object + properties: + value: + type: string responses: '200': $ref: '../components/responses/DropletGetResponse.yaml' @@ -258,3 +347,5 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/EnvironmentVariableGroups.yaml b/apis/cf/latest/paths/EnvironmentVariableGroups.yaml index b3a7a48..6024611 100644 --- a/apis/cf/latest/paths/EnvironmentVariableGroups.yaml +++ b/apis/cf/latest/paths/EnvironmentVariableGroups.yaml @@ -4,47 +4,63 @@ description: Retrieve an environment variable group. operationId: getEnvironmentVariableGroup tags: - - Environment Variable Groups + - Environment Variable Groups parameters: - - name: name - in: path - required: true - schema: - type: string - enum: - - running - - staging + - name: name + in: path + required: true + schema: + type: string + enum: + - running + - staging responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/EnvironmentVariableGroup.yaml + $ref: '../components/schemas/EnvironmentVariableGroup.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '500': - $ref: ../components/responses/500.yaml + $ref: '../components/responses/500.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' patch: summary: Update environment variable group - description: |- - Update the environment variable group. The variables given in the request will be merged with the existing environment variable group. Any requested variables with a value of `null` will be removed from the group. Environment variable names may not start with VCAP_. PORT is not a valid environment variable. + description: 'Update the environment variable group. The variables given in the + request will be merged with the existing environment variable group. Any requested + variables with a value of `null` will be removed from the group. Environment + variable names may not start with VCAP_. PORT is not a valid environment variable. - Variables updated in the **running** environment variable group will not take effect until apps are restarted. + + Variables updated in the **running** environment variable group will not take + effect until apps are restarted.' operationId: updateEnvironmentVariableGroup tags: - - Environment Variable Groups + - Environment Variable Groups parameters: - - name: name - in: path - required: true - schema: - type: string - enum: - - running - - staging + - name: name + in: path + required: true + schema: + type: string + enum: + - running + - staging requestBody: description: The environment variables to update required: true @@ -57,19 +73,28 @@ type: object additionalProperties: type: string - description: Environment variables to inject; keys and values must be strings + description: Environment variables to inject; keys and values must + be strings responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/EnvironmentVariableGroup.yaml + $ref: '../components/schemas/EnvironmentVariableGroup.yaml' '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '500': - $ref: ../components/responses/500.yaml + $ref: '../components/responses/500.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/FeatureFlags.yaml b/apis/cf/latest/paths/FeatureFlags.yaml index 370bd89..d78922e 100644 --- a/apis/cf/latest/paths/FeatureFlags.yaml +++ b/apis/cf/latest/paths/FeatureFlags.yaml @@ -4,105 +4,121 @@ description: Retrieve all feature_flags. operationId: listFeatureFlags tags: - - Feature Flags + - Feature Flags parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: updated_ats - in: query - required: false - schema: - type: string - description: > - Timestamp to filter by. When filtering on equality, several comma-delimited timestamps may be passed. + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: updated_ats + in: query + required: false + schema: + type: string + description: 'Timestamp to filter by. When filtering on equality, several comma-delimited + timestamps may be passed. + + ' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/FeatureFlagList.yaml + $ref: '../components/schemas/FeatureFlagList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/feature_flags/{name}: get: summary: Get a feature flag description: Get a feature flag. operationId: getFeatureFlag tags: - - Feature Flags + - Feature Flags parameters: - - name: name - in: path - required: true - schema: - type: string - enum: - - app_bits_upload - - app_scaling - - diego_docker - - diego_cnb - - env_var_visibility - - hide_marketplace_from_unauthenticated_users - - private_domain_creation - - resource_matching - - route_creation - - route_sharing - - service_instance_creation - - service_instance_sharing - - set_roles_by_username - - space_developer_env_var_visibility - - space_scoped_private_broker_creation - - task_creation - - unset_roles_by_username - - user_org_creation - description: The name of the feature flag + - name: name + in: path + required: true + schema: + type: string + enum: + - app_bits_upload + - app_scaling + - diego_docker + - diego_cnb + - env_var_visibility + - hide_marketplace_from_unauthenticated_users + - private_domain_creation + - resource_matching + - route_creation + - route_sharing + - service_instance_creation + - service_instance_sharing + - set_roles_by_username + - space_developer_env_var_visibility + - space_scoped_private_broker_creation + - task_creation + - unset_roles_by_username + - user_org_creation + description: The name of the feature flag responses: '200': description: Successfully retrieved feature flag content: application/json: schema: - $ref: ../components/schemas/FeatureFlag.yaml + $ref: '../components/schemas/FeatureFlag.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a feature flag description: Update a feature flag. operationId: updateFeatureFlag tags: - - Feature Flags + - Feature Flags parameters: - - name: name - in: path - required: true - schema: - type: string - enum: - - app_bits_upload - - app_scaling - - diego_docker - - diego_cnb - - env_var_visibility - - hide_marketplace_from_unauthenticated_users - - private_domain_creation - - resource_matching - - route_creation - - route_sharing - - service_instance_creation - - service_instance_sharing - - set_roles_by_username - - space_developer_env_var_visibility - - space_scoped_private_broker_creation - - task_creation - - unset_roles_by_username - - user_org_creation - description: The name of the feature flag + - name: name + in: path + required: true + schema: + type: string + enum: + - app_bits_upload + - app_scaling + - diego_docker + - diego_cnb + - env_var_visibility + - hide_marketplace_from_unauthenticated_users + - private_domain_creation + - resource_matching + - route_creation + - route_sharing + - service_instance_creation + - service_instance_sharing + - set_roles_by_username + - space_developer_env_var_visibility + - space_scoped_private_broker_creation + - task_creation + - unset_roles_by_username + - user_org_creation + description: The name of the feature flag requestBody: description: Feature flag object that needs to be updated required: true @@ -116,15 +132,28 @@ description: Whether the feature flag is enabled custom_error_message: type: string - description: The error string returned by the API when a client performs an action disabled by the feature flag + description: The error string returned by the API when a client performs + an action disabled by the feature flag responses: '200': description: Successfully updated feature flag content: application/json: schema: - $ref: ../components/schemas/FeatureFlag.yaml + $ref: '../components/schemas/FeatureFlag.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/Info.yaml b/apis/cf/latest/paths/Info.yaml index 97c1365..f5d1684 100644 --- a/apis/cf/latest/paths/Info.yaml +++ b/apis/cf/latest/paths/Info.yaml @@ -59,6 +59,16 @@ $ref: '../components/responses/NotFound.yaml' '500': $ref: '../components/responses/500.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/info/usage_summary: get: summary: Get platform usage summary diff --git a/apis/cf/latest/paths/IsolationSegments.yaml b/apis/cf/latest/paths/IsolationSegments.yaml index 041ccd9..d0593c6 100644 --- a/apis/cf/latest/paths/IsolationSegments.yaml +++ b/apis/cf/latest/paths/IsolationSegments.yaml @@ -1,104 +1,125 @@ /v3/isolation_segments: get: summary: List isolation segments - description: Retrieves all isolation segments to which the user has access. For admin, this is all the isolation segments in the system. For anyone else, this is the isolation segments in the allowed list for any organization to which the user belongs. + description: Retrieves all isolation segments to which the user has access. For + admin, this is all the isolation segments in the system. For anyone else, this + is the isolation segments in the allowed list for any organization to which + the user belongs. operationId: listIsolationSegments tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - $ref: ../components/parameters/LabelSelector.yaml - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of isolation segment guids to filter by. - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of isolation segment names to filter by. - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by. + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of isolation segment guids to filter by. + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of isolation segment names to filter by. + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by. responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/IsolationSegmentList.yaml + $ref: '../components/schemas/IsolationSegmentList.yaml' '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '500': - $ref: ../components/responses/500.yaml + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create an isolation segment description: Create an isolation segment. operationId: createIsolationSegment tags: - - Isolation Segments + - Isolation Segments requestBody: - $ref: ../components/requestBodies/IsolationSegmentCreate.yaml + $ref: '../components/requestBodies/IsolationSegmentCreate.yaml' responses: '201': description: Created content: application/json: schema: - $ref: ../components/schemas/IsolationSegment.yaml + $ref: '../components/schemas/IsolationSegment.yaml' '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '500': - $ref: ../components/responses/500.yaml + $ref: '../components/responses/500.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/isolation_segments/{guid}: get: summary: Get an isolation segment - description: Retrieve an isolation segment to which the user has access. For admin, this is any isolation segment in the system. For anyone else, this is an isolation segment in the allowed list for any organization to which the user belongs. + description: Retrieve an isolation segment to which the user has access. For admin, + this is any isolation segment in the system. For anyone else, this is an isolation + segment in the allowed list for any organization to which the user belongs. operationId: getIsolationSegment tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/IsolationSegment.yaml + $ref: '../components/schemas/IsolationSegment.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update an isolation segment description: Update an isolation segment. operationId: updateIsolationSegment tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Isolation segment to update required: true @@ -111,135 +132,194 @@ type: string description: The name of the isolation segment metadata: - $ref: ../components/schemas/Metadata.yaml + $ref: '../components/schemas/Metadata.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/IsolationSegment.yaml + $ref: '../components/schemas/IsolationSegment.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete an isolation segment description: An isolation segment cannot be deleted if it is entitled to any organization. operationId: deleteIsolationSegment tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: - '202': - description: Accepted - headers: - Location: - description: URL of the job that is deleting the isolation segment - schema: - type: string - format: uri - content: - application/json: - schema: - $ref: ../components/schemas/Job.yaml + '204': + description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/isolation_segments/{guid}/relationships/organizations: post: summary: Entitle organizations for isolation segment - description: |- - This endpoint entitles the specified organizations for the isolation segment. In the case where the specified isolation segment is the system-wide shared segment, and if an organization is not already entitled for any other isolation segment, then the shared isolation segment automatically gets assigned as the default for that organization. + description: This endpoint entitles the specified organizations for the isolation + segment. In the case where the specified isolation segment is the system-wide + shared segment, and if an organization is not already entitled for any other + isolation segment, then the shared isolation segment automatically gets assigned + as the default for that organization. operationId: entitleOrganizationsForIsolationSegment tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: description: List of organizations to entitle required: true content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' get: summary: List organizations relationship - description: |- - This endpoint lists the organizations entitled for the isolation segment. For an Admin, this will list all entitled organizations in the system. For any other user, this will list only the entitled organizations to which the user belongs. + description: This endpoint lists the organizations entitled for the isolation + segment. For an Admin, this will list all entitled organizations in the system. + For any other user, this will list only the entitled organizations to which + the user belongs. operationId: listOrganizationsForIsolationSegment tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/isolation_segments/{guid}/relationships/organizations/{org_guid}: delete: summary: Revoke entitlement to isolation segment for an organization - description: This endpoint revokes the entitlement for the specified organization to the isolation segment. If the isolation segment is assigned to a space within an organization, the entitlement cannot be revoked. If the isolation segment is the organization’s default, the entitlement cannot be revoked. + description: This endpoint revokes the entitlement for the specified organization + to the isolation segment. If the isolation segment is assigned to a space within + an organization, the entitlement cannot be revoked. If the isolation segment + is the organization’s default, the entitlement cannot be revoked. operationId: revokeIsolationSegmentForOrganization tags: - - Isolation Segments + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml - - name: org_guid - in: path - required: true - schema: - type: string - format: uuid - description: The GUID of the organization to revoke entitlement from. + - $ref: '../components/parameters/Guid.yaml' + - name: org_guid + in: path + required: true + schema: + type: string + format: uuid + description: The GUID of the organization to revoke entitlement from. responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/isolation_segments/{guid}/relationships/spaces: get: summary: List spaces relationship - description: This endpoint lists the spaces to which the isolation segment is assigned. For an Admin, this will list all associated spaces in the system. For an org manager, this will list only those associated spaces belonging to orgs for which the user is a manager. For any other user, this will list only those associated spaces to which the user has access. + description: This endpoint lists the spaces to which the isolation segment is + assigned. For an Admin, this will list all associated spaces in the system. + For an org manager, this will list only those associated spaces belonging to + orgs for which the user is a manager. For any other user, this will list only + those associated spaces to which the user has access. operationId: listSpacesForIsolationSegment tags: - - Isolation Segments + - Isolation Segments + parameters: + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/RelationshipToMany.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' +/v3/isolation_segments/{guid}/organizations: + get: + summary: List organizations for isolation segment + description: This endpoint lists the organizations entitled for the isolation + segment. For an Admin, this will list all entitled organizations in the system. + For any other user, this will list only the entitled organizations to which + the user belongs. + operationId: listOrganizationsForIsolationSegmentShort + tags: + - Isolation Segments parameters: - - $ref: ../components/parameters/Guid.yaml - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/OrganizationList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' diff --git a/apis/cf/latest/paths/Jobs.yaml b/apis/cf/latest/paths/Jobs.yaml index b00328b..cb1fa23 100644 --- a/apis/cf/latest/paths/Jobs.yaml +++ b/apis/cf/latest/paths/Jobs.yaml @@ -4,9 +4,9 @@ description: Retrieve a specific job. operationId: getJob tags: - - Jobs + - Jobs parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved job @@ -18,3 +18,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/Manifests.yaml b/apis/cf/latest/paths/Manifests.yaml index cfd2b13..bb82a73 100644 --- a/apis/cf/latest/paths/Manifests.yaml +++ b/apis/cf/latest/paths/Manifests.yaml @@ -1,15 +1,19 @@ /v3/spaces/{guid}/actions/apply_manifest: post: summary: Apply a manifest to a space - description: |- - Apply changes specified in a manifest to the named apps and their underlying processes. The apps must reside in the space. These changes are additive and will not modify any unspecified properties or remove any existing environment variables, app features, routes, or services. + description: 'Apply changes specified in a manifest to the named apps and their + underlying processes. The apps must reside in the space. These changes are additive + and will not modify any unspecified properties or remove any existing environment + variables, app features, routes, or services. - Apply manifest will only trigger an immediate update for the “instances” property or routing changes. All other properties require an app restart to take effect. + + Apply manifest will only trigger an immediate update for the “instances” property + or routing changes. All other properties require an app restart to take effect.' operationId: applyManifest tags: - - Manifests + - Manifests parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/x-yaml: @@ -28,15 +32,27 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/apps/{guid}/manifest: get: summary: Generate a manifest for an app description: Generate a manifest for an app and its underlying processes. operationId: generateManifest tags: - - Manifests + - Manifests parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -48,18 +64,33 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/spaces/{guid}/manifest_diff: post: summary: Create a manifest diff for a space (experimental) - description: |- - This endpoint returns a JSON representation of the difference between the provided manifest and the current state of a space. + description: 'This endpoint returns a JSON representation of the difference between + the provided manifest and the current state of a space. + - Currently, this endpoint can only diff [version 1](#the-manifest-schema) manifests. + Currently, this endpoint can only diff [version 1](#the-manifest-schema) manifests.' operationId: createManifestDiff tags: - - Manifests + - Manifests parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/x-yaml: @@ -110,3 +141,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/OrganizationQuotas.yaml b/apis/cf/latest/paths/OrganizationQuotas.yaml index 86fee74..340584a 100644 --- a/apis/cf/latest/paths/OrganizationQuotas.yaml +++ b/apis/cf/latest/paths/OrganizationQuotas.yaml @@ -4,34 +4,34 @@ description: This endpoint lists all organization quota resources. operationId: listOrganizationQuotas tags: - - Organization Quotas + - Organization Quotas parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization quota guids to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization quota names to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization quota guids to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization quota names to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK @@ -41,15 +41,31 @@ $ref: '../components/schemas/OrganizationQuotaList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create an organization quota - description: |- - This endpoint creates a new organization quota, but does not assign it to a specific organization unless an organization GUID is provided in the `relationships.organizations` parameter. + description: 'This endpoint creates a new organization quota, but does not assign + it to a specific organization unless an organization GUID is provided in the + `relationships.organizations` parameter. + - To create an organization quota you must be an admin. + To create an organization quota you must be an admin.' operationId: createOrganizationQuota tags: - - Organization Quotas + - Organization Quotas requestBody: $ref: '../components/requestBodies/OrganizationQuotaCreateRequestBody.yaml' responses: @@ -63,15 +79,25 @@ $ref: '../components/responses/Unauthorized.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/organization_quotas/{guid}: get: summary: Get an organization quota description: This endpoint gets an individual organization quota resource. operationId: getOrganizationQuota tags: - - Organization Quotas + - Organization Quotas parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -83,14 +109,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update an organization quota - description: This endpoint will only update the parameters specified in the request body. Any unspecified parameters will retain their existing values. + description: This endpoint will only update the parameters specified in the request + body. Any unspecified parameters will retain their existing values. operationId: updateOrganizationQuota tags: - - Organization Quotas + - Organization Quotas parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/OrganizationQuotaUpdateRequestBody.yaml' responses: @@ -106,14 +135,24 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete an organization quota description: Organization quotas cannot be deleted when applied to any organizations. operationId: deleteOrganizationQuota tags: - - Organization Quotas + - Organization Quotas parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -127,23 +166,29 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/organization_quotas/{quota_guid}/relationships/organizations: post: summary: Apply an organization quota to an organization - description: |- - This endpoint applies an organization quota to one or more organizations. + description: 'This endpoint applies an organization quota to one or more organizations. + - Only admin users can apply an organization quota to an organization. + Only admin users can apply an organization quota to an organization.' operationId: applyOrganizationQuota tags: - - Organization Quotas + - Organization Quotas parameters: - - name: quota_guid - in: path - required: true - schema: - type: string - format: uuid + - name: quota_guid + in: path + required: true + schema: + type: string + format: uuid requestBody: content: application/json: @@ -160,3 +205,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Organizations.yaml b/apis/cf/latest/paths/Organizations.yaml index 992c261..a0b671e 100644 --- a/apis/cf/latest/paths/Organizations.yaml +++ b/apis/cf/latest/paths/Organizations.yaml @@ -4,28 +4,28 @@ description: Retrieve all organizations the user has access to. operationId: listOrganizations tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization names to filter by - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization names to filter by + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by responses: '200': description: OK @@ -35,12 +35,26 @@ $ref: '../components/schemas/OrganizationList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create an organization description: Create an organization. operationId: createOrganization tags: - - Organizations + - Organizations requestBody: $ref: '../components/requestBodies/OrganizationCreateRequestBody.yaml' responses: @@ -60,15 +74,25 @@ $ref: '../components/responses/Unauthorized.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/organizations/{guid}: get: summary: Get an organization description: This endpoint retrieves the specified organization object. operationId: getOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -86,14 +110,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update an organization description: Update an organization. operationId: updateOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/OrganizationUpdateRequestBody.yaml' responses: @@ -115,14 +141,25 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete an organization - description: When an organization is deleted, user roles associated with the organization will also be deleted. + description: When an organization is deleted, user roles associated with the organization + will also be deleted. operationId: deleteOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -136,15 +173,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/organizations/{guid}/domains/default: get: summary: Get default domain description: Retrieve the default domain for a given organization. operationId: getDefaultDomainForOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -156,15 +199,18 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/organizations/{guid}/usage_summary: get: summary: Get usage summary - description: This endpoint retrieves the specified organization object's memory and app instance usage summary. + description: This endpoint retrieves the specified organization object's memory + and app instance usage summary. operationId: getUsageSummaryForOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -200,54 +246,57 @@ description: The URL to get this usage summary organization: $ref: '../components/schemas/Link.yaml' - description: The URL to get the organization for this usage summary + description: The URL to get the organization for this usage + summary '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/organizations/{guid}/users: get: summary: List users for an organization description: Retrieve all users with a role in the specified organization. operationId: listUsersForOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of user guids to filter by - - name: usernames - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of usernames to filter by - - name: origins - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of user origins to filter by - - name: partial_usernames - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of partial usernames to filter by - - $ref: '../components/parameters/LabelSelector.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of user guids to filter by + - name: usernames + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of usernames to filter by + - name: origins + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of user origins to filter by + - name: partial_usernames + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of partial usernames to filter by + - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK @@ -259,15 +308,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/organizations/{guid}/relationships/default_isolation_segment: get: summary: Get default isolation segment description: Retrieve the default isolation segment for a given organization. operationId: getDefaultIsolationSegmentForOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -279,17 +330,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Assign default isolation segment - description: |- - Set the default isolation segment for a given organization. Only isolation segments that are entitled to the organization are eligible to be the default isolation segment. + description: 'Set the default isolation segment for a given organization. Only + isolation segments that are entitled to the organization are eligible to be + the default isolation segment. - Apps will not run in the new default isolation segment until they are restarted. + + Apps will not run in the new default isolation segment until they are restarted.' operationId: assignDefaultIsolationSegmentForOrganization tags: - - Organizations + - Organizations parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: @@ -306,3 +361,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Packages.yaml b/apis/cf/latest/paths/Packages.yaml index e9ddcf8..4eb14d2 100644 --- a/apis/cf/latest/paths/Packages.yaml +++ b/apis/cf/latest/paths/Packages.yaml @@ -4,66 +4,66 @@ description: Retrieve all packages. operationId: listPackages tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of package guids to filter by - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - AWAITING_UPLOAD - - PROCESSING_UPLOAD - - READY - - FAILED - - COPYING - - EXPIRED - description: Comma-delimited list of package states to filter by - - name: types - in: query - schema: - type: array - items: - type: string - enum: - - bits - - docker - description: Comma-delimited list of package types to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app guids to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of package guids to filter by + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - AWAITING_UPLOAD + - PROCESSING_UPLOAD + - READY + - FAILED + - COPYING + - EXPIRED + description: Comma-delimited list of package states to filter by + - name: types + in: query + schema: + type: array + items: + type: string + enum: + - bits + - docker + description: Comma-delimited list of package types to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app guids to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by responses: '200': description: List of packages @@ -73,12 +73,26 @@ $ref: '../components/schemas/PackageList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a package description: Create a package. operationId: createPackage tags: - - Packages + - Packages requestBody: $ref: '../components/requestBodies/PackageCreateRequestBody.yaml' responses: @@ -102,15 +116,21 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/packages/{guid}: get: summary: Get a package description: Retrieve a package. operationId: getPackage tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved package @@ -130,14 +150,16 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a package description: Update a package. operationId: updatePackage tags: - - Packages + - Packages parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Package object that needs to be updated required: true @@ -150,10 +172,12 @@ $ref: '../components/schemas/Metadata.yaml' username: type: string - description: The username for the image’s registry. Only possible for Docker package. + description: The username for the image’s registry. Only possible + for Docker package. password: type: string - description: The password for the image’s registry. Only possible for Docker package. + description: The password for the image’s registry. Only possible + for Docker package. responses: '200': description: Successfully updated package @@ -163,18 +187,28 @@ $ref: '../components/schemas/Package.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a package description: Delete a package. operationId: deletePackage tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -188,34 +222,40 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/packages/{guid}/droplets: get: summary: List droplets for a package description: Retrieve a list of droplets belonging to a package. operationId: listPackageDroplets tags: - - Packages - - Droplets + - Packages + - Droplets parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of droplet guids to filter by - - name: states - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of droplet states to filter by + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of droplet guids to filter by + - name: states + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of droplet states to filter by responses: '200': description: List of droplets for the package @@ -227,15 +267,20 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/packages/{guid}/upload: post: summary: Upload package bits - description: This upload endpoint takes a multi-part form requests for packages of type `bits`. The request requires either a [.zip file](https://en.wikipedia.org/wiki/Zip_(file_format)) uploaded under the `bits` field or a list of [resource match objects](#the-resource-match-object) under the `resources` field. These field may be used together. + description: This upload endpoint takes a multi-part form requests for packages + of type `bits`. The request requires either a [.zip file](https://en.wikipedia.org/wiki/Zip_(file_format)) + uploaded under the `bits` field or a list of [resource match objects](#the-resource-match-object) + under the `resources` field. These field may be used together. operationId: uploadPackageBits tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: multipart/form-data: @@ -259,6 +304,24 @@ properties: value: type: string + application/json: + schema: + type: object + properties: + resources: + type: array + items: + type: object + properties: + path: + type: string + size_in_bytes: + type: integer + checksum: + type: object + properties: + value: + type: string responses: '200': description: Successfully uploaded package bits @@ -279,6 +342,8 @@ $ref: '../components/schemas/Package.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' '422': @@ -286,35 +351,42 @@ /v3/packages/{guid}/download: get: summary: Download package bits - description: |- - This endpoint downloads the bits of an existing package. + description: 'This endpoint downloads the bits of an existing package. + - When using a remote blobstore, such as AWS, the response is a redirect to the actual location of the bits. If the client is automatically following redirects, then the OAuth token that was used to communicate with Cloud Controller will be replayed on the new redirect request. Some blobstores may reject the request in that case. Clients may need to follow the redirect without including the OAuth token. + When using a remote blobstore, such as AWS, the response is a redirect to the + actual location of the bits. If the client is automatically following redirects, + then the OAuth token that was used to communicate with Cloud Controller will + be replayed on the new redirect request. Some blobstores may reject the request + in that case. Clients may need to follow the redirect without including the + OAuth token.' operationId: downloadPackageBits tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '302': description: Redirect to download location '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/packages?source_guid={source_guid}: post: summary: Copy a package description: This endpoint copies the bits of a source package to a target package. operationId: copyPackage tags: - - Packages + - Packages parameters: - - name: source_guid - in: query - required: true - schema: - type: string - format: uuid - description: The GUID of the package to copy from + - name: source_guid + in: query + required: true + schema: + type: string + format: uuid + description: The GUID of the package to copy from requestBody: description: Destination app for the copied package required: true @@ -326,7 +398,7 @@ relationships: $ref: '../components/schemas/Relationships.yaml' required: - - relationships + - relationships description: Request schema for copying a package responses: '201': @@ -339,49 +411,53 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/packages: get: summary: List packages for an app description: Retrieve packages for an app that the user has access to. operationId: listAppPackages tags: - - Packages + - Packages parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app GUIDs to filter by - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - AWAITING_UPLOAD - - PROCESSING_UPLOAD - - READY - - FAILED - - COPYING - - EXPIRED - description: Comma-delimited list of package states to filter by - - name: types - in: query - schema: - type: array - items: - type: string - enum: - - bits - - docker - description: Comma-delimited list of package types to filter by + - $ref: '../components/parameters/Guid.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app GUIDs to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - AWAITING_UPLOAD + - PROCESSING_UPLOAD + - READY + - FAILED + - COPYING + - EXPIRED + description: Comma-delimited list of package states to filter by + - name: types + in: query + schema: + type: array + items: + type: string + enum: + - bits + - docker + description: Comma-delimited list of package types to filter by responses: '200': description: OK @@ -393,3 +469,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Processes.yaml b/apis/cf/latest/paths/Processes.yaml index 737d45b..1cddf91 100644 --- a/apis/cf/latest/paths/Processes.yaml +++ b/apis/cf/latest/paths/Processes.yaml @@ -4,49 +4,49 @@ description: Retrieve all processes. operationId: listProcesses tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of process guids to filter by - - name: types - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of process types to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app guids to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of process guids to filter by + - name: types + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of process types to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app guids to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by responses: '200': description: OK @@ -56,15 +56,29 @@ $ref: '../components/schemas/ProcessList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/processes/{guid}: get: summary: Get a process description: Get a process. operationId: getProcess tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -87,14 +101,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a process description: Update a process. operationId: updateProcess tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/ProcessUpdateRequestBody.yaml' responses: @@ -121,15 +137,25 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/processes/{guid}/stats: get: summary: Get stats for a process description: Get stats for a process. operationId: getProcessStats tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -143,28 +169,42 @@ $ref: '../components/responses/NotFound.yaml' '503': $ref: '../components/responses/ServiceUnavailable.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/processes/{guid}/actions/scale: post: summary: Scale a process description: Scale a process. operationId: scaleProcess tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: properties: instances: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string memory_in_mb: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string disk_in_mb: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string log_rate_limit_in_bytes_per_second: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string responses: '202': description: Accepted @@ -178,23 +218,34 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/processes/{guid}/instances/{index}: delete: summary: Terminate a process instance - description: |- - Terminate an instance of a specific process. Health management will eventually restart the instance. + description: 'Terminate an instance of a specific process. Health management will + eventually restart the instance. - This allows a user to stop a single misbehaving instance of a process. + + This allows a user to stop a single misbehaving instance of a process.' operationId: terminateProcessInstance tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: index - in: path - required: true - schema: - type: integer + - $ref: '../components/parameters/Guid.yaml' + - name: index + in: path + required: true + schema: + type: integer responses: '204': description: No Content @@ -202,18 +253,24 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/apps/{guid}/processes: get: summary: List processes for an app description: Retrieves all processes belonging to an app. operationId: listAppProcesses tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' responses: '200': description: OK @@ -225,20 +282,50 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/processes/{type}: get: summary: Get a process for an app description: Get a specific process for an app. operationId: getProcessForApp tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: type - in: path - required: true - schema: - type: string + - $ref: '../components/parameters/Guid.yaml' + - name: type + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/Process.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + patch: + summary: Update a process for an app + description: Update a specific process for an app. + operationId: updateProcessForApp + tags: + - Processes + parameters: + - $ref: '../components/parameters/Guid.yaml' + - name: type + in: path + required: true + schema: + type: string + requestBody: + $ref: '../components/requestBodies/ProcessUpdateRequestBody.yaml' responses: '200': description: OK @@ -246,24 +333,30 @@ application/json: schema: $ref: '../components/schemas/Process.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/apps/{guid}/processes/{type}/stats: get: summary: Get stats for a process for an app description: Get stats for a specific process for an app. operationId: getProcessStatsForApp tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: type - in: path - required: true - schema: - type: string + - $ref: '../components/parameters/Guid.yaml' + - name: type + in: path + required: true + schema: + type: string responses: '200': description: OK @@ -277,33 +370,45 @@ $ref: '../components/responses/NotFound.yaml' '503': $ref: '../components/responses/ServiceUnavailable.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/processes/{type}/actions/scale: post: summary: Scale a process for an app description: Scale a specific process for an app. operationId: scaleProcessForApp tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: type - in: path - required: true - schema: - type: string + - $ref: '../components/parameters/Guid.yaml' + - name: type + in: path + required: true + schema: + type: string requestBody: content: application/json: schema: properties: instances: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string memory_in_mb: - type: [integer, 'null', string] + type: + - integer + - 'null' + - string disk_in_mb: - type: [integer, 'null'] + type: + - integer + - 'null' log_rate_limit_in_bytes_per_second: - type: [integer, 'null'] + type: + - integer + - 'null' responses: '202': description: Accepted @@ -317,25 +422,27 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/processes/{type}/instances/{index}: delete: summary: Terminate a process instance for an app description: Terminate a specific process instance for an app. operationId: terminateProcessInstanceForApp tags: - - Processes + - Processes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: type - in: path - required: true - schema: - type: string - - name: index - in: path - required: true - schema: - type: integer + - $ref: '../components/parameters/Guid.yaml' + - name: type + in: path + required: true + schema: + type: string + - name: index + in: path + required: true + schema: + type: integer responses: '204': description: No Content @@ -343,3 +450,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/ResourceMatches.yaml b/apis/cf/latest/paths/ResourceMatches.yaml index 5a1e8e8..22ec704 100644 --- a/apis/cf/latest/paths/ResourceMatches.yaml +++ b/apis/cf/latest/paths/ResourceMatches.yaml @@ -50,3 +50,11 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/Revisions.yaml b/apis/cf/latest/paths/Revisions.yaml index 069b36c..159bc3e 100644 --- a/apis/cf/latest/paths/Revisions.yaml +++ b/apis/cf/latest/paths/Revisions.yaml @@ -4,9 +4,9 @@ description: Retrieve a revision. operationId: getRevision tags: - - Revisions + - Revisions parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved revision @@ -24,14 +24,28 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' patch: summary: Update a revision description: Update a revision. operationId: updateRevision tags: - - Revisions + - Revisions parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Revision object that needs to be updated required: true @@ -62,15 +76,25 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/revisions/{guid}/environment_variables: get: summary: Get environment variables for a revision description: Retrieve the environment variables that are associated with the revision. operationId: getRevisionEnvironmentVariables tags: - - Revisions + - Revisions parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved revision environment variables @@ -97,28 +121,30 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/revisions: get: summary: List revisions for an app description: Retrieve revisions for an app the user has access to. operationId: listRevisionsForApp tags: - - Revisions + - Revisions parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - name: versions - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of revision versions to filter by + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - name: versions + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of revision versions to filter by responses: '200': description: Successfully retrieved revisions for app @@ -130,18 +156,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/apps/{guid}/revisions/deployed: get: summary: List deployed revisions for an app - description: Retrieve deployed revisions for an app the user has access to. Deployed revisions are revisions that are linked to started processes in the app. + description: Retrieve deployed revisions for an app the user has access to. Deployed + revisions are revisions that are linked to started processes in the app. operationId: listDeployedRevisionsForApp tags: - - Revisions + - Revisions parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' responses: '200': description: Successfully retrieved deployed revisions for app @@ -153,3 +182,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Roles.yaml b/apis/cf/latest/paths/Roles.yaml index 468ae1d..db897cc 100644 --- a/apis/cf/latest/paths/Roles.yaml +++ b/apis/cf/latest/paths/Roles.yaml @@ -4,69 +4,70 @@ description: This endpoint lists roles that the user has access to. operationId: listRoles tags: - - Roles + - Roles parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - description: Comma-delimited list of role guids to filter by - schema: - type: array - items: - type: string - - name: types - in: query - description: Comma-delimited list of role types to filter by - schema: - type: array - items: - type: string - enum: - - organization_user - - organization_auditor - - organization_manager - - organization_billing_manager - - space_auditor - - space_developer - - space_manager - - space_supporter - - name: organization_guids - in: query - description: Comma-delimited list of organization guids to filter by - schema: - type: array - items: - type: string - - name: space_guids - in: query - description: Comma-delimited list of space guids to filter by - schema: - type: array - items: - type: string - - name: user_guids - in: query - description: Comma-delimited list of user guids to filter by - schema: - type: array - items: - type: string - - name: include - in: query - description: Optionally include additional related resources in the response; valid values are `user`, `space`, and `organization`. - schema: - type: array - items: - type: string - enum: - - user - - space - - organization + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + description: Comma-delimited list of role guids to filter by + schema: + type: array + items: + type: string + - name: types + in: query + description: Comma-delimited list of role types to filter by + schema: + type: array + items: + type: string + enum: + - organization_user + - organization_auditor + - organization_manager + - organization_billing_manager + - space_auditor + - space_developer + - space_manager + - space_supporter + - name: organization_guids + in: query + description: Comma-delimited list of organization guids to filter by + schema: + type: array + items: + type: string + - name: space_guids + in: query + description: Comma-delimited list of space guids to filter by + schema: + type: array + items: + type: string + - name: user_guids + in: query + description: Comma-delimited list of user guids to filter by + schema: + type: array + items: + type: string + - name: include + in: query + description: Optionally include additional related resources in the response; + valid values are `user`, `space`, and `organization`. + schema: + type: array + items: + type: string + enum: + - user + - space + - organization responses: '200': $ref: '../components/responses/RoleListResponse.yaml' @@ -80,23 +81,42 @@ $ref: '../components/responses/UnprocessableEntity.yaml' '500': $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a role - description: |- - This endpoint creates a new role for a user in an organization or space. + description: 'This endpoint creates a new role for a user in an organization or + space. - To create an organization role you must be an admin or organization manager in the organization associated with the role. - To create a space role you must be an admin, an organization manager in the parent organization of the space associated with the role, or a space manager in the space associated with the role. + To create an organization role you must be an admin or organization manager + in the organization associated with the role. - For a user to be assigned a space role, the user must already have an organization role in the parent organization. - If the associated user is valid but does not exist in Cloud Controller’s database, a user resource will be created automatically. + To create a space role you must be an admin, an organization manager in the + parent organization of the space associated with the role, or a space manager + in the space associated with the role. - If CAPI property `cc.allow_user_creation_by_org_manager` is enabled, the organization role is being created by username + origin and the user does not exist in UAA yet, the user will be created. The origin must be different from `uaa` in this case. + + For a user to be assigned a space role, the user must already have an organization + role in the parent organization. + + + If the associated user is valid but does not exist in Cloud Controller’s database, + a user resource will be created automatically. + + + If CAPI property `cc.allow_user_creation_by_org_manager` is enabled, the organization + role is being created by username + origin and the user does not exist in UAA + yet, the user will be created. The origin must be different from `uaa` in this + case.' operationId: createRole tags: - - Roles + - Roles requestBody: $ref: '../components/requestBodies/RoleCreate.yaml' responses: @@ -116,7 +136,8 @@ operationId: getOrganization parameters: guid: $response.body#/relationships/organization/data/guid - description: Retrieve the organization for this role (if organization role) + description: Retrieve the organization for this role (if organization + role) space: operationId: getSpace parameters: @@ -130,28 +151,35 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '429': + $ref: '../components/responses/TooManyRequests.yaml' '500': $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/roles/{guid}: get: summary: Get a role description: This endpoint gets an individual role resource. operationId: getRole tags: - - Roles + - Roles parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: include - in: query - description: Optionally include additional related resources in the response; valid values are `user`, `space`, and `organization`. - schema: - type: array - items: - type: string - enum: - - user - - space - - organization + - $ref: '../components/parameters/Guid.yaml' + - name: include + in: query + description: Optionally include additional related resources in the response; + valid values are `user`, `space`, and `organization`. + schema: + type: array + items: + type: string + enum: + - user + - space + - organization responses: '200': description: Role retrieved @@ -169,7 +197,8 @@ operationId: getOrganization parameters: guid: $response.body#/relationships/organization/data/guid - description: Retrieve the organization for this role (if organization role) + description: Retrieve the organization for this role (if organization + role) space: operationId: getSpace parameters: @@ -179,14 +208,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' delete: summary: Delete a role description: This endpoint deletes an individual role. operationId: deleteRole tags: - - Roles + - Roles parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -198,5 +229,11 @@ format: uri '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' diff --git a/apis/cf/latest/paths/Routes.yaml b/apis/cf/latest/paths/Routes.yaml index cf29708..3526de3 100644 --- a/apis/cf/latest/paths/Routes.yaml +++ b/apis/cf/latest/paths/Routes.yaml @@ -4,91 +4,91 @@ description: Retrieve all routes the user has access to. operationId: listRoutes tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: protocols - in: query - schema: - type: array - items: - type: string - enum: - - http - - tcp - description: Comma-delimited list of protocols to filter by - - name: hosts - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of hosts to filter by - - name: paths - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of paths to filter by - - name: ports - in: query - schema: - type: array - items: - type: integer - description: Comma-delimited list of ports to filter by - - name: domain_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of domain GUIDs to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space GUIDs to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app GUIDs to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization GUIDs to filter by - - name: service_instance_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance GUIDs to filter by - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - domain - - space.organization - - space - description: Optionally include a list of unique related resources in the response + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: protocols + in: query + schema: + type: array + items: + type: string + enum: + - http + - tcp + description: Comma-delimited list of protocols to filter by + - name: hosts + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of hosts to filter by + - name: paths + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of paths to filter by + - name: ports + in: query + schema: + type: array + items: + type: integer + description: Comma-delimited list of ports to filter by + - name: domain_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of domain GUIDs to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space GUIDs to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app GUIDs to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization GUIDs to filter by + - name: service_instance_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance GUIDs to filter by + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - domain + - space.organization + - space + description: Optionally include a list of unique related resources in the response responses: '200': $ref: '../components/responses/RouteListResponse.yaml' @@ -96,12 +96,24 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a route description: Create a route. operationId: createRoute tags: - - Routes + - Routes requestBody: $ref: '../components/requestBodies/RouteCreateRequestBody.yaml' responses: @@ -128,15 +140,23 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '500': + $ref: '../components/responses/500.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/routes/{guid}: get: summary: Get a route description: Retrieve a route. operationId: getRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: Successfully retrieved route @@ -159,14 +179,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a route description: Update a route. operationId: updateRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: Route object that needs to be updated required: true @@ -200,14 +222,26 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a route description: Delete a route. operationId: deleteRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Successfully deleted route @@ -221,46 +255,53 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/apps/{guid}/routes: get: summary: List routes for an app - description: Retrieve all routes that have destinations that point to the given app. + description: Retrieve all routes that have destinations that point to the given + app. operationId: listAppRoutes tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - name: domain_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of domain guids to filter by - - name: hosts - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of hostnames to filter by - - name: paths - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of paths to filter by - - name: ports - in: query - schema: - type: array - items: - type: integer - description: Comma-delimited list of ports to filter by + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: domain_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of domain guids to filter by + - name: hosts + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of hostnames to filter by + - name: paths + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of paths to filter by + - name: ports + in: query + schema: + type: array + items: + type: integer + description: Comma-delimited list of ports to filter by responses: '200': description: OK @@ -272,15 +313,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/routes/{guid}/relationships/shared_spaces: get: summary: List shared spaces relationship description: Lists the spaces that the route has been shared to. operationId: listSharedSpacesRelationship tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -292,14 +335,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' post: summary: Share a route with other spaces (experimental) - description: This endpoint shares the route with the specified spaces. This allows users with read and write access in both the route’s space and a shared space to bind a route to an app in the shared space. In order to share into a space the requesting user must have write permission in the target space. + description: This endpoint shares the route with the specified spaces. This allows + users with read and write access in both the route’s space and a shared space + to bind a route to an app in the shared space. In order to share into a space + the requesting user must have write permission in the target space. operationId: shareRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: List of spaces to share the route with required: true @@ -320,22 +368,24 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/routes/{guid}/relationships/shared_spaces/{space_guid}: delete: summary: Unshare a route that was shared with another space (experimental) description: Unshares a route that was shared with another space. operationId: unshareRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: space_guid - in: path - required: true - schema: - type: string - format: uuid - description: The GUID of the space to unshare the route from + - $ref: '../components/parameters/Guid.yaml' + - name: space_guid + in: path + required: true + schema: + type: string + format: uuid + description: The GUID of the space to unshare the route from responses: '204': description: No Content @@ -343,15 +393,22 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/routes/{guid}/relationships/space: patch: summary: Transfer ownership (experimental) - description: Transfers a the ownership of a route to a another space. Users must have write access for both spaces to perform this action. The original owning space will still retain access to the route as a [shared space](#share-a-route-with-other-spaces-experimental). To completely remove a space from a route, users will have to use [unshare route](#unshare-a-route-that-was-shared-with-another-space-experimental). + description: Transfers a the ownership of a route to a another space. Users must + have write access for both spaces to perform this action. The original owning + space will still retain access to the route as a [shared space](#share-a-route-with-other-spaces-experimental). + To completely remove a space from a route, users will have to use [unshare route](#unshare-a-route-that-was-shared-with-another-space-experimental). operationId: transferRouteOwnership tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: description: The space to transfer ownership to required: true @@ -368,17 +425,19 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/routes/{guid}/destinations: get: summary: List destinations for a route description: Retrieve all destinations associated with a route. operationId: listDestinationsForRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' responses: '200': description: List of destinations for the route @@ -392,17 +451,20 @@ $ref: '../components/responses/Unauthorized.yaml' '403': $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' post: summary: Insert destinations for a route - description: |- - Add one or more destinations to a route, preserving any existing destinations. + description: 'Add one or more destinations to a route, preserving any existing + destinations. - Weighted destinations (deprecated) cannot be added with this endpoint. + + Weighted destinations (deprecated) cannot be added with this endpoint.' operationId: insertDestinationsForRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/RouteDestinations.yaml' responses: @@ -420,19 +482,28 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' patch: summary: Replace all destinations for a route - description: |- - Replaces all destinations for a route, removing any destinations not included in the provided list. + description: 'Replaces all destinations for a route, removing any destinations + not included in the provided list. + - Weighted destinations are **deprecated**. Development of the experimental Istio Service Mesh routing layer was discontinued in 2020 and is no longer supported by the platform. Specifying a `weight` for a destination will take no effect. + Weighted destinations are **deprecated**. Development of the experimental Istio + Service Mesh routing layer was discontinued in 2020 and is no longer supported + by the platform. Specifying a `weight` for a destination will take no effect. - If weighted destinations are provided, however, all destinations provided here must have a `weight` specified, and all weights for this route must sum to 100. If not, all provided destinations must not have a `weight`. Mixing weighted and unweighted destinations for a route is not allowed. + + If weighted destinations are provided, however, all destinations provided here + must have a `weight` specified, and all weights for this route must sum to 100. + If not, all provided destinations must not have a `weight`. Mixing weighted + and unweighted destinations for a route is not allowed.' operationId: replaceDestinationsForRouteWithPatch tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/RouteDestinations.yaml' responses: @@ -450,19 +521,28 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' put: summary: Replace all destinations for a route - description: |- - Replaces all destinations for a route, removing any destinations not included in the provided list. + description: 'Replaces all destinations for a route, removing any destinations + not included in the provided list. + + + Weighted destinations are **deprecated**. Development of the experimental Istio + Service Mesh routing layer was discontinued in 2020 and is no longer supported + by the platform. Specifying a `weight` for a destination will take no effect. - Weighted destinations are **deprecated**. Development of the experimental Istio Service Mesh routing layer was discontinued in 2020 and is no longer supported by the platform. Specifying a `weight` for a destination will take no effect. - If weighted destinations are provided, however, all destinations provided here must have a `weight` specified, and all weights for this route must sum to 100. If not, all provided destinations must not have a `weight`. Mixing weighted and unweighted destinations for a route is not allowed. + If weighted destinations are provided, however, all destinations provided here + must have a `weight` specified, and all weights for this route must sum to 100. + If not, all provided destinations must not have a `weight`. Mixing weighted + and unweighted destinations for a route is not allowed.' operationId: replaceDestinationsForRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/RouteDestinations.yaml' responses: @@ -480,22 +560,25 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/routes/{guid}/destinations/{destination_guid}: patch: summary: Update a destination protocol for a route - description: This endpoint updates the protocol of a route destination (app, port and weight cannot be updated) + description: This endpoint updates the protocol of a route destination (app, port + and weight cannot be updated) operationId: updateDestinationProtocolForRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: destination_guid - in: path - required: true - schema: - type: string - format: uuid - description: The GUID of the route destination + - $ref: '../components/parameters/Guid.yaml' + - name: destination_guid + in: path + required: true + schema: + type: string + format: uuid + description: The GUID of the route destination requestBody: description: Protocol of the destination required: true @@ -508,10 +591,10 @@ type: string description: Protocol of the destination enum: - - http1 - - http2 + - http1 + - http2 required: - - protocol + - protocol responses: '200': description: Successfully updated protocol of the destination @@ -525,21 +608,23 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' delete: summary: Remove destination for a route description: Remove a destination from a route. operationId: removeDestinationForRoute tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: destination_guid - in: path - required: true - schema: - type: string - format: uuid - description: The GUID of the route destination to remove + - $ref: '../components/parameters/Guid.yaml' + - name: destination_guid + in: path + required: true + schema: + type: string + format: uuid + description: The GUID of the route destination to remove responses: '204': description: Successfully removed destination from the route @@ -547,15 +632,20 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/routes: delete: summary: Delete unmapped routes for a space - description: Deletes all routes in a space that are not mapped to any applications and not bound to any service instances. + description: Deletes all routes in a space that are not mapped to any applications + and not bound to any service instances. operationId: deleteUnmappedRoutesForSpace tags: - - Routes + - Routes parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '204': description: Successfully deleted unmapped routes from the space @@ -563,3 +653,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/SecurityGroups.yaml b/apis/cf/latest/paths/SecurityGroups.yaml index 9731cf4..81c6cb2 100644 --- a/apis/cf/latest/paths/SecurityGroups.yaml +++ b/apis/cf/latest/paths/SecurityGroups.yaml @@ -4,180 +4,278 @@ description: List security groups. operationId: listSecurityGroups tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-separated list of resource GUIDs to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-separated list of names to filter by (case insensitive) - - name: globally_enabled_running - in: query - schema: - type: boolean - description: If true, only include the security groups that are enabled for running - - name: globally_enabled_staging - in: query - schema: - type: boolean - description: If true, only include the security groups that are enabled for staging - - name: running_space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: staging_space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-separated list of resource GUIDs to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-separated list of names to filter by (case insensitive) + - name: globally_enabled_running + in: query + schema: + type: boolean + description: If true, only include the security groups that are enabled for + running + - name: globally_enabled_staging + in: query + schema: + type: boolean + description: If true, only include the security groups that are enabled for + staging + - name: running_space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: staging_space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SecurityGroupList.yaml + $ref: '../components/schemas/SecurityGroupList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a security group description: Create a security group. operationId: createSecurityGroup tags: - - Security Groups + - Security Groups requestBody: content: application/json: schema: - $ref: ../components/schemas/SecurityGroup.yaml + $ref: '../components/schemas/SecurityGroupCreate.yaml' responses: '201': description: Created content: application/json: schema: - $ref: ../components/schemas/SecurityGroup.yaml + $ref: '../components/schemas/SecurityGroup.yaml' '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/security_groups/{guid}: get: summary: Get a security group description: Get a security group. operationId: getSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SecurityGroup.yaml + $ref: '../components/schemas/SecurityGroup.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + patch: + summary: Update a security group + description: Update a security group. + operationId: updateSecurityGroup + tags: + - Security Groups + parameters: + - $ref: '../components/parameters/Guid.yaml' + requestBody: + content: + application/json: + schema: + $ref: '../components/schemas/SecurityGroupUpdate.yaml' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/SecurityGroup.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' + delete: + summary: Delete a security group + description: Delete a security group. + operationId: deleteSecurityGroup + tags: + - Security Groups + parameters: + - $ref: '../components/parameters/Guid.yaml' + responses: + '202': + description: Accepted + headers: + Location: + description: URL of the job that is deleting the security group + schema: + type: string + format: uri + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/spaces/{guid}/running_security_groups: get: summary: List running security groups for a space - description: This endpoint returns security groups that are enabled for running globally or at the space level for the given space. + description: This endpoint returns security groups that are enabled for running + globally or at the space level for the given space. operationId: listRunningSecurityGroupsForSpaceBySpaceGuid tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SecurityGroupList.yaml + $ref: '../components/schemas/SecurityGroupList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/spaces/{guid}/staging_security_groups: get: summary: List staging security groups for a space - description: This endpoint returns security groups that are enabled for staging globally or at the space level for the given space. + description: This endpoint returns security groups that are enabled for staging + globally or at the space level for the given space. operationId: listStagingSecurityGroupsForSpaceBySpaceGuid tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SecurityGroupList.yaml + $ref: '../components/schemas/SecurityGroupList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a security group - description: This endpoint will only update the parameters specified in the request body. Any unspecified parameters will retain their existing values. Updates to the `rules` parameter will fully replace the current set of `rules` for the security group. Updates to the `globally_enabled` parameter will be merged with the existing configuration. For example, an update to the `globally_enabled.running` parameter will not affect the `globally_enabled.staging` configuration. + description: This endpoint will only update the parameters specified in the request + body. Any unspecified parameters will retain their existing values. Updates + to the `rules` parameter will fully replace the current set of `rules` for the + security group. Updates to the `globally_enabled` parameter will be merged with + the existing configuration. For example, an update to the `globally_enabled.running` + parameter will not affect the `globally_enabled.staging` configuration. operationId: updateSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: - $ref: ../components/schemas/SecurityGroup.yaml + $ref: '../components/schemas/SecurityGroup.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SecurityGroup.yaml + $ref: '../components/schemas/SecurityGroup.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' delete: summary: Delete a security group description: Delete a security group. operationId: deleteSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -190,88 +288,122 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/security_groups/{guid}/relationships/running_spaces: post: summary: Bind a running security group to spaces - description: This endpoint binds one or more spaces to a security group with the running lifecycle. Running app containers within these spaces will inherit the rules specified by this security group. Apps within these spaces must be restarted for these changes to take effect. Unless a security group is globally-enabled, an admin must add it to a space for it to be visible for the org and space managers. Once it's visible, org and space managers can add it to additional spaces. + description: This endpoint binds one or more spaces to a security group with the + running lifecycle. Running app containers within these spaces will inherit the + rules specified by this security group. Apps within these spaces must be restarted + for these changes to take effect. Unless a security group is globally-enabled, + an admin must add it to a space for it to be visible for the org and space managers. + Once it's visible, org and space managers can add it to additional spaces. operationId: bindRunningSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/security_groups/{guid}/relationships/running_spaces/{space_guid}: delete: summary: Unbind a running security group from a space - description: This endpoint removes a space from a security group with the running lifecycle. Apps within this space must be restarted for these changes to take effect. + description: This endpoint removes a space from a security group with the running + lifecycle. Apps within this space must be restarted for these changes to take + effect. operationId: unbindRunningSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml - - $ref: ../components/parameters/SpaceGuid.yaml + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/SpaceGuid.yaml' responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/security_groups/{guid}/relationships/staging_spaces: post: summary: Bind a staging security group to spaces - description: This endpoint binds one or more spaces to a security group with the staging lifecycle. Staging app containers within these spaces will inherit the rules specified by this security group. Apps within these spaces must be restaged for these changes to take effect. Unless a security group is globally-enabled, an admin must add it to a space for it to be visible for the org and space managers. Once it's visible, org and space managers can add it to additional spaces. + description: This endpoint binds one or more spaces to a security group with the + staging lifecycle. Staging app containers within these spaces will inherit the + rules specified by this security group. Apps within these spaces must be restaged + for these changes to take effect. Unless a security group is globally-enabled, + an admin must add it to a space for it to be visible for the org and space managers. + Once it's visible, org and space managers can add it to additional spaces. operationId: bindStagingSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/security_groups/{guid}/relationships/staging_spaces/{space_guid}: delete: summary: Unbind a staging security group from a space - description: This endpoint removes a space from a security group with the staging lifecycle. Apps within this space must be restaged for these changes to take effect. + description: This endpoint removes a space from a security group with the staging + lifecycle. Apps within this space must be restaged for these changes to take + effect. operationId: unbindStagingSecurityGroup tags: - - Security Groups + - Security Groups parameters: - - $ref: ../components/parameters/Guid.yaml - - $ref: ../components/parameters/SpaceGuid.yaml + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/SpaceGuid.yaml' responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/ServiceBrokers.yaml b/apis/cf/latest/paths/ServiceBrokers.yaml index 5bee9a2..769acd1 100644 --- a/apis/cf/latest/paths/ServiceBrokers.yaml +++ b/apis/cf/latest/paths/ServiceBrokers.yaml @@ -4,44 +4,61 @@ description: This endpoint retrieves the service brokers the user has access to. operationId: listServiceBrokers tags: - - Service Brokers + - Service Brokers parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service broker names to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - $ref: ../components/parameters/LabelSelector.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service broker names to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceBrokerList.yaml + $ref: '../components/schemas/ServiceBrokerList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a service broker - description: |- - This endpoint creates a new service broker and a job to synchronize the service offerings and service plans with those in the broker’s catalog. The `Location` header refers to the created job which syncs the broker with the catalog. See [_Service broker jobs_](#service-broker-jobs) for more information and limitations. + description: This endpoint creates a new service broker and a job to synchronize + the service offerings and service plans with those in the broker’s catalog. + The `Location` header refers to the created job which syncs the broker with + the catalog. See [_Service broker jobs_](#service-broker-jobs) for more information + and limitations. operationId: createServiceBroker tags: - - Service Brokers + - Service Brokers requestBody: $ref: '../components/requestBodies/ServiceBrokerCreate.yaml' responses: @@ -57,15 +74,25 @@ $ref: '../components/responses/Unauthorized.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_brokers/{guid}: get: summary: Get a service broker description: This endpoint retrieves the service broker by GUID. operationId: getServiceBroker tags: - - Service Brokers + - Service Brokers parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -78,27 +105,30 @@ operationId: getSpace parameters: guid: $response.body#/relationships/space/data/guid - description: Retrieve the space for this service broker (space-scoped brokers only) + description: Retrieve the space for this service broker (space-scoped + brokers only) '401': $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service broker - description: |- - This endpoint updates a service broker. Depending on the parameters specified, the endpoint may respond with a background job, and it may synchronize the service offerings and service plans with those in the broker’s catalog. + description: 'This endpoint updates a service broker. Depending on the parameters + specified, the endpoint may respond with a background job, and it may synchronize + the service offerings and service plans with those in the broker’s catalog. - When a service broker has a synchronization job in progress, only updates with `metadata` are permitted until the synchronization job is complete. + + When a service broker has a synchronization job in progress, only updates with + `metadata` are permitted until the synchronization job is complete.' operationId: updateServiceBroker tags: - - Service Brokers + - Service Brokers parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: - content: - application/json: - schema: - $ref: '../components/schemas/ServiceBroker.yaml' + $ref: '../components/requestBodies/ServiceBrokerUpdateRequestBody.yaml' responses: '200': description: OK @@ -111,7 +141,8 @@ operationId: getSpace parameters: guid: $response.body#/relationships/space/data/guid - description: Retrieve the space for this service broker (space-scoped brokers only) + description: Retrieve the space for this service broker (space-scoped + brokers only) '202': description: Accepted headers: @@ -126,14 +157,26 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a service broker - description: This endpoint creates a job to delete an existing service broker. The `Location` header refers to the created job. See [_Service broker jobs_](#service-broker-jobs) for more information and limitations. + description: This endpoint creates a job to delete an existing service broker. + The `Location` header refers to the created job. See [_Service broker jobs_](#service-broker-jobs) + for more information and limitations. operationId: deleteServiceBroker tags: - - Service Brokers + - Service Brokers parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -147,3 +190,9 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' diff --git a/apis/cf/latest/paths/ServiceCredentialBindings.yaml b/apis/cf/latest/paths/ServiceCredentialBindings.yaml index b5fcc9e..7ff1ac6 100644 --- a/apis/cf/latest/paths/ServiceCredentialBindings.yaml +++ b/apis/cf/latest/paths/ServiceCredentialBindings.yaml @@ -1,123 +1,146 @@ /v3/service_credential_bindings: get: summary: List service credential bindings - description: This endpoint retrieves the service credential bindings the user has access to. + description: This endpoint retrieves the service credential bindings the user + has access to. operationId: listServiceCredentialBindings tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - $ref: ../components/parameters/LabelSelector.yaml - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service credential binding names to filter by - - name: service_instance_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance guids to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app guids to filter by - - name: type - in: query - schema: + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service credential binding names to filter + by + - name: service_instance_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance guids to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app guids to filter by + - name: type + in: query + schema: + type: string + enum: + - app + - key + description: Type of credential binding to filter by. Valid values are 'app' + or 'key' + - name: service_instance_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance names to filter by + - name: app_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app names to filter by + - name: service_plan_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service plan guids to filter by + - name: service_plan_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service plan names to filter by + - name: service_offering_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service offering guids to filter by + - name: service_offering_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service offering names to filter by + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service credential binding guids to filter + by + - name: include + in: query + schema: + type: array + items: type: string enum: - - app - - key - description: Type of credential binding to filter by. Valid values are 'app' or 'key' - - name: service_instance_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance names to filter by - - name: app_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app names to filter by - - name: service_plan_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service plan guids to filter by - - name: service_plan_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service plan names to filter by - - name: service_offering_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service offering guids to filter by - - name: service_offering_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service offering names to filter by - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service credential binding guids to filter by - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - app - - service_instance - description: "Optionally include a list of unique related resources in the response. Valid values are: `app`, `service_instance`" + - app + - service_instance + description: 'Optionally include a list of unique related resources in the response. + Valid values are: `app`, `service_instance`' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceCredentialBindingList.yaml + $ref: '../components/schemas/ServiceCredentialBindingList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a service credential binding - description: |- - This endpoint creates a new service credential binding. Service credential bindings can be of type `app` or `key`; `key` is only valid for managed service instances. + description: 'This endpoint creates a new service credential binding. Service + credential bindings can be of type `app` or `key`; `key` is only valid for managed + service instances. + - If failures occur when creating a service credential binding for a managed service instances, the API might execute orphan mitigation steps accordingly to cases outlined in the [OSBAPI specification](https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#orphan-mitigation) + If failures occur when creating a service credential binding for a managed service + instances, the API might execute orphan mitigation steps accordingly to cases + outlined in the [OSBAPI specification](https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#orphan-mitigation)' operationId: createServiceCredentialBinding tags: - - Service Credential Bindings + - Service Credential Bindings requestBody: $ref: '../components/requestBodies/ServiceCredentialBindingCreateRequestBody.yaml' responses: @@ -127,13 +150,13 @@ application/json: schema: oneOf: - - $ref: ../components/schemas/AppCredentialBinding.yaml - - $ref: ../components/schemas/KeyCredentialBinding.yaml + - $ref: '../components/schemas/AppCredentialBinding.yaml' + - $ref: '../components/schemas/KeyCredentialBinding.yaml' discriminator: propertyName: type mapping: - app: '../components/schemas/AppCredentialBinding.yaml' - key: '../components/schemas/KeyCredentialBinding.yaml' + app: ../components/schemas/AppCredentialBinding.yaml + key: ../components/schemas/KeyCredentialBinding.yaml '202': description: Accepted headers: @@ -143,22 +166,38 @@ type: string format: uri '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '500': + $ref: '../components/responses/500.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_credential_bindings/{guid}: get: summary: Get a service credential binding description: This endpoint retrieves the service credential binding by GUID. operationId: getServiceCredentialBinding tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - app + - service_instance + description: Optionally include a list of unique related resources in the response responses: '200': description: OK @@ -166,19 +205,20 @@ application/json: schema: oneOf: - - $ref: ../components/schemas/AppCredentialBinding.yaml - - $ref: ../components/schemas/KeyCredentialBinding.yaml + - $ref: '../components/schemas/AppCredentialBinding.yaml' + - $ref: '../components/schemas/KeyCredentialBinding.yaml' discriminator: propertyName: type mapping: - app: '../components/schemas/AppCredentialBinding.yaml' - key: '../components/schemas/KeyCredentialBinding.yaml' + app: ../components/schemas/AppCredentialBinding.yaml + key: ../components/schemas/KeyCredentialBinding.yaml links: app: operationId: getApp parameters: guid: $response.body#/relationships/app/data/guid - description: Retrieve the app for this credential binding (app bindings only) + description: Retrieve the app for this credential binding (app bindings + only) service_instance: operationId: getServiceInstance parameters: @@ -187,15 +227,18 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service credential binding - description: This endpoint updates a service credential binding with labels and annotations. + description: This endpoint updates a service credential binding with labels and + annotations. operationId: updateServiceCredentialBinding tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/ServiceCredentialBindingUpdateRequestBody.yaml' responses: @@ -205,27 +248,40 @@ application/json: schema: oneOf: - - $ref: ../components/schemas/AppCredentialBinding.yaml - - $ref: ../components/schemas/KeyCredentialBinding.yaml + - $ref: '../components/schemas/AppCredentialBinding.yaml' + - $ref: '../components/schemas/KeyCredentialBinding.yaml' discriminator: propertyName: type mapping: - app: '../components/schemas/AppCredentialBinding.yaml' - key: '../components/schemas/KeyCredentialBinding.yaml' + app: ../components/schemas/AppCredentialBinding.yaml + key: ../components/schemas/KeyCredentialBinding.yaml '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a service credential binding - description: "This endpoint deletes a service credential binding. When deleting credential bindings originated from user provided service instances, the delete operation does not require interactions with service brokers, therefore the API will respond synchronously to the delete request." + description: This endpoint deletes a service credential binding. When deleting + credential bindings originated from user provided service instances, the delete + operation does not require interactions with service brokers, therefore the + API will respond synchronously to the delete request. operationId: deleteServiceCredentialBinding tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -239,17 +295,23 @@ description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/service_credential_bindings/{guid}/details: get: summary: Get a service credential binding details description: This endpoint retrieves the service credential binding details. operationId: getServiceCredentialBindingDetails tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -260,17 +322,22 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_credential_bindings/{guid}/parameters: get: summary: Get parameters for a service credential binding - description: |- - Queries the Service Broker for the parameters associated with this service credential binding. The broker catalog must have enabled the `bindings_retrievable` feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) for the value of this feature flag. This endpoint is not available for User-Provided Service Instances. + description: Queries the Service Broker for the parameters associated with this + service credential binding. The broker catalog must have enabled the `bindings_retrievable` + feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) + for the value of this feature flag. This endpoint is not available for User-Provided + Service Instances. operationId: getServiceCredentialBindingParameters tags: - - Service Credential Bindings + - Service Credential Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -282,3 +349,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' \ No newline at end of file diff --git a/apis/cf/latest/paths/ServiceInstances.yaml b/apis/cf/latest/paths/ServiceInstances.yaml index e9be127..ca7710d 100644 --- a/apis/cf/latest/paths/ServiceInstances.yaml +++ b/apis/cf/latest/paths/ServiceInstances.yaml @@ -1,90 +1,109 @@ /v3/service_instances: get: summary: List service instances - description: This endpoint retrieves the service instances the user has access to, including access granted by service instance sharing. + description: This endpoint retrieves the service instances the user has access + to, including access granted by service instance sharing. operationId: listServiceInstances tags: - - Service Instances + - Service Instances parameters: - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance names to filter by - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance guids to filter by - - name: type - in: query - schema: + - name: names + in: query + schema: + type: array + items: type: string - enum: - - managed - - user-provided - description: Filter by type; valid values are 'managed' and 'user-provided' - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: service_plan_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service plan guids to filter by - - name: service_plan_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service plan names to filter by - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/LabelSelector.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - name: fields - in: query - schema: - type: object - description: Fields to include in the response + description: Comma-delimited list of service instance names to filter by + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance guids to filter by + - name: type + in: query + schema: + type: string + enum: + - managed + - user-provided + description: Filter by type; valid values are 'managed' and 'user-provided' + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: service_plan_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service plan guids to filter by + - name: service_plan_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service plan names to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - name: fields + in: query + schema: + type: object + description: Fields to include in the response responses: '200': description: Request succeeded content: application/json: schema: - $ref: ../components/schemas/ServiceInstanceList.yaml + $ref: '../components/schemas/ServiceInstanceList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a service instance - description: |- - This endpoint creates a new service instance. Service instances can be of type `managed` or `user-provided`, and the required parameters are different for each type. User provided service instances do not require interactions with service brokers. + description: 'This endpoint creates a new service instance. Service instances + can be of type `managed` or `user-provided`, and the required parameters are + different for each type. User provided service instances do not require interactions + with service brokers. + - If failures occur when creating managed service instances, the API might execute orphan mitigation steps accordingly to cases outlined in the [OSBAPI specification](https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#orphan-mitigation) + If failures occur when creating managed service instances, the API might execute + orphan mitigation steps accordingly to cases outlined in the [OSBAPI specification](https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#orphan-mitigation)' operationId: createServiceInstance tags: - - Service Instances + - Service Instances requestBody: $ref: '../components/requestBodies/ServiceInstanceCreateRequestBody.yaml' responses: @@ -93,7 +112,7 @@ content: application/json: schema: - $ref: ../components/schemas/UserProvidedServiceInstance.yaml + $ref: '../components/schemas/UserProvidedServiceInstance.yaml' links: space: operationId: getSpace @@ -109,22 +128,29 @@ type: string format: uri '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '500': + $ref: '../components/responses/500.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_instances/{guid}/credentials: get: summary: Get credentials for a user-provided service instance - description: Retrieves the credentials for a user-provided service instance. This endpoint is not available for managed service instances. + description: Retrieves the credentials for a user-provided service instance. This + endpoint is not available for managed service instances. operationId: getServiceInstanceCredentials tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -135,16 +161,19 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_instances/{guid}/relationships/shared_spaces/usage_summary: get: summary: Get usage summary in shared spaces - description: This endpoint returns the number of bound apps in spaces where the service instance has been shared to. + description: This endpoint returns the number of bound apps in spaces where the + service instance has been shared to. operationId: getServiceInstanceUsageSummaryInSharedSpaces tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -159,90 +188,116 @@ type: object properties: space: - $ref: ../components/schemas/Relationship.yaml + $ref: '../components/schemas/Relationship.yaml' bound_app_count: type: integer '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_instances/{guid}/relationships/shared_spaces: get: summary: List shared spaces relationship - description: This endpoint lists the spaces that the service instance has been shared to. + description: This endpoint lists the spaces that the service instance has been + shared to. operationId: listServiceInstanceSharedSpaces tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' + - name: fields + in: query + schema: + type: object + description: Fields to include in the response responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' post: summary: Share a service instance to other spaces - description: This endpoint shares the service instance with the specified spaces. In order to share into a space the requesting user must be a space developer in the target space. + description: This endpoint shares the service instance with the specified spaces. + In order to share into a space the requesting user must be a space developer + in the target space. operationId: shareServiceInstance tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_instances/{guid}/relationships/shared_spaces/{space_guid}: delete: summary: Unshare a service instance from another space - description: This endpoint unshares the service instance from the specified space. This will automatically unbind any applications bound to this service instance in the specified space. Unsharing a service instance from a space will not delete any service keys. + description: This endpoint unshares the service instance from the specified space. + This will automatically unbind any applications bound to this service instance + in the specified space. Unsharing a service instance from a space will not delete + any service keys. operationId: unshareServiceInstance tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml - - name: space_guid - in: path - required: true - schema: - type: string - format: uuid + - $ref: '../components/parameters/Guid.yaml' + - name: space_guid + in: path + required: true + schema: + type: string + format: uuid responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/service_instances/{guid}/parameters: get: summary: Get parameters for a managed service instance - description: Queries the Service Broker for the parameters associated with this service instance. The broker catalog must have enabled the `instances_retrievable` feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) for the value of this feature flag. + description: Queries the Service Broker for the parameters associated with this + service instance. The broker catalog must have enabled the `instances_retrievable` + feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) + for the value of this feature flag. operationId: getServiceInstanceParameters tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -253,19 +308,26 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_instances/{guid}/permissions: get: summary: Get permissions for a service instance - description: |- - Get the current user’s permissions for the given service instance. If a user can get a service instance then they can ‘read’ it. Users who can update a service instance can ‘manage’ it. + description: 'Get the current user’s permissions for the given service instance. + If a user can get a service instance then they can ‘read’ it. Users who can + update a service instance can ‘manage’ it. - This endpoint’s primary purpose is to enable third-party service dashboards to determine the permissions of a given Cloud Foundry user that has authenticated with the dashboard via single sign-on (SSO). For more information, see the Cloud Foundry documentation on [Dashboard Single Sign-On](https://docs.cloudfoundry.org/services/dashboard-sso.html). + + This endpoint’s primary purpose is to enable third-party service dashboards + to determine the permissions of a given Cloud Foundry user that has authenticated + with the dashboard via single sign-on (SSO). For more information, see the Cloud + Foundry documentation on [Dashboard Single Sign-On](https://docs.cloudfoundry.org/services/dashboard-sso.html).' operationId: getServiceInstancePermissions tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -281,16 +343,23 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_instances/{guid}: get: summary: Get a service instance description: This endpoint retrieves the service instance by GUID. operationId: getServiceInstance tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' + - name: fields + in: query + schema: + type: object + description: Fields to include in the response responses: '200': description: OK @@ -298,13 +367,13 @@ application/json: schema: oneOf: - - $ref: ../components/schemas/ManagedServiceInstance.yaml - - $ref: ../components/schemas/UserProvidedServiceInstance.yaml - discriminator: + - $ref: '../components/schemas/ManagedServiceInstance.yaml' + - $ref: '../components/schemas/UserProvidedServiceInstance.yaml' + discriminator: propertyName: type mapping: - managed: '../components/schemas/ManagedServiceInstance.yaml' - user-provided: '../components/schemas/UserProvidedServiceInstance.yaml' + managed: ../components/schemas/ManagedServiceInstance.yaml + user-provided: ../components/schemas/UserProvidedServiceInstance.yaml links: space: operationId: getSpace @@ -315,26 +384,36 @@ operationId: getServicePlan parameters: guid: $response.body#/relationships/service_plan/data/guid - description: Retrieve the service plan for this service instance (managed instances only) + description: Retrieve the service plan for this service instance (managed + instances only) '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service instance - description: |- - Some updates can be performed entirely within the Cloud Controller in which case the response is synchronous. Some updates require communication with the service broker, in which case the response will be asynchronous. The response will be asynchronous if any of these parameters are specified: + description: 'Some updates can be performed entirely within the Cloud Controller + in which case the response is synchronous. Some updates require communication + with the service broker, in which case the response will be asynchronous. The + response will be asynchronous if any of these parameters are specified: + * `parameters` + * `service_plan` + * `maintenance_info` + * `name` - when the service offering has `allow_context_updates` feature enabled - Otherwise the response will be synchronous. + + Otherwise the response will be synchronous.' operationId: updateServiceInstance tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/ServiceInstanceUpdateRequestBody.yaml' responses: @@ -344,13 +423,13 @@ application/json: schema: oneOf: - - $ref: ../components/schemas/ManagedServiceInstance.yaml - - $ref: ../components/schemas/UserProvidedServiceInstance.yaml + - $ref: '../components/schemas/ManagedServiceInstance.yaml' + - $ref: '../components/schemas/UserProvidedServiceInstance.yaml' discriminator: propertyName: type mapping: - managed: '../components/schemas/ManagedServiceInstance.yaml' - user-provided: '../components/schemas/UserProvidedServiceInstance.yaml' + managed: ../components/schemas/ManagedServiceInstance.yaml + user-provided: ../components/schemas/UserProvidedServiceInstance.yaml links: space: operationId: getSpace @@ -361,7 +440,8 @@ operationId: getServicePlan parameters: guid: $response.body#/relationships/service_plan/data/guid - description: Retrieve the service plan for this service instance (managed instances only) + description: Retrieve the service plan for this service instance (managed + instances only) '202': description: Accepted headers: @@ -373,29 +453,48 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' delete: summary: Delete a service instance - description: |- - This endpoint deletes a service instance and any associated service credential + description: 'This endpoint deletes a service instance and any associated service + credential + bindings or service route bindings. The service instance is removed from all - spaces where it is available. User provided service instances do not require interactions with service brokers, - therefore the API will respond synchronously to the delete request. For managed service instances, the API will respond asynchronously. + + spaces where it is available. User provided service instances do not require + interactions with service brokers, + + therefore the API will respond synchronously to the delete request. For managed + service instances, the API will respond asynchronously. + If a service credential binding or service route binding cannot be deleted + synchronously, then the operation will fail, and the deletion of the binding - will continue in the background. The operation can be retried until it is successful. + + will continue in the background. The operation can be retried until it is successful.' operationId: deleteServiceInstance tags: - - Service Instances + - Service Instances parameters: - - $ref: ../components/parameters/Guid.yaml - - name: purge - in: query - schema: - type: boolean - description: If `true`, deletes the service instance and all associated resources without any interaction with the service broker. + - $ref: '../components/parameters/Guid.yaml' + - name: purge + in: query + schema: + type: boolean + description: If `true`, deletes the service instance and all associated resources + without any interaction with the service broker. responses: '202': description: Accepted @@ -410,6 +509,8 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/ServiceOfferings.yaml b/apis/cf/latest/paths/ServiceOfferings.yaml index a6ed7b1..ef92c8b 100644 --- a/apis/cf/latest/paths/ServiceOfferings.yaml +++ b/apis/cf/latest/paths/ServiceOfferings.yaml @@ -1,139 +1,178 @@ /v3/service_offerings: get: summary: List service offerings - description: This endpoint retrieves the service offerings the user has access to. + description: This endpoint retrieves the service offerings the user has access + to. operationId: listServiceOfferings tags: - - Service Offerings + - Service Offerings parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service offering names to filter by - - name: available - in: query - schema: - type: boolean - description: Filter by the `available` property; valid values are `true` or `false` - - name: service_broker_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service broker GUIDs to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: service_broker_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service broker names to filter by - - $ref: ../components/parameters/LabelSelector.yaml - - name: fields - in: query - schema: - type: object - description: Fields to include in the response - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service offering names to filter by + - name: available + in: query + schema: + type: boolean + description: Filter by the `available` property; valid values are `true` or + `false` + - name: service_broker_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service broker GUIDs to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: service_broker_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service broker names to filter by + - $ref: '../components/parameters/LabelSelector.yaml' + - name: fields + in: query + schema: + type: object + description: Fields to include in the response + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceOfferingList.yaml + $ref: '../components/schemas/ServiceOfferingList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_offerings/{guid}: get: summary: Get a service offering description: This endpoint retrieves the service offering by GUID. operationId: getServiceOffering tags: - - Service Offerings + - Service Offerings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceOffering.yaml + $ref: '../components/schemas/ServiceOffering.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service offering description: This endpoint updates a service offering with labels and annotations. operationId: updateServiceOffering tags: - - Service Offerings + - Service Offerings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: properties: metadata: - $ref: ../components/schemas/Metadata.yaml + $ref: '../components/schemas/Metadata.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceOffering.yaml + $ref: '../components/schemas/ServiceOffering.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a service offering - description: |- - This endpoint deletes a service offering. This is typically used to remove orphan service offerings from the Cloud Foundry database when they have been removed from the service broker catalog, or when the service broker has been removed. + description: 'This endpoint deletes a service offering. This is typically used + to remove orphan service offerings from the Cloud Foundry database when they + have been removed from the service broker catalog, or when the service broker + has been removed. - Note that this operation only affects the Cloud Foundry database, and no attempt is made to contact the service broker. + + Note that this operation only affects the Cloud Foundry database, and no attempt + is made to contact the service broker.' operationId: deleteServiceOffering tags: - - Service Offerings + - Service Offerings parameters: - - $ref: ../components/parameters/Guid.yaml - - name: purge - in: query - schema: - type: boolean - description: If `true`, any service plans, instances, and bindings associated with this service offering will also be deleted + - $ref: '../components/parameters/Guid.yaml' + - name: purge + in: query + schema: + type: boolean + description: If `true`, any service plans, instances, and bindings associated + with this service offering will also be deleted responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' diff --git a/apis/cf/latest/paths/ServicePlans.yaml b/apis/cf/latest/paths/ServicePlans.yaml index 8212996..c5370d8 100644 --- a/apis/cf/latest/paths/ServicePlans.yaml +++ b/apis/cf/latest/paths/ServicePlans.yaml @@ -4,262 +4,317 @@ description: This endpoint retrieves the service plans the user has access to. operationId: listServicePlans tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service plan names to filter by - - name: available - in: query - schema: - type: boolean - description: Filter by the `available` property; valid values are `true` or `false` - - name: service_offering_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service offering guids to filter by - - name: service_instance_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance guids to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: broker_catalog_ids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of broker catalog IDs to filter by - - name: service_broker_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service broker GUIDs to filter by - - name: service_broker_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service broker names to filter by - - name: service_offering_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service offering names to filter by - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - space.organization - - service_offering - description: Optionally include a list of unique related resources in the response - - $ref: ../components/parameters/LabelSelector.yaml - - name: fields - in: query - schema: - type: object - description: Fields to include in the response - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service plan names to filter by + - name: available + in: query + schema: + type: boolean + description: Filter by the `available` property; valid values are `true` or + `false` + - name: service_offering_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service offering guids to filter by + - name: service_instance_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance guids to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: broker_catalog_ids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of broker catalog IDs to filter by + - name: service_broker_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service broker GUIDs to filter by + - name: service_broker_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service broker names to filter by + - name: service_offering_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service offering names to filter by + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - space.organization + - service_offering + description: Optionally include a list of unique related resources in the response + - $ref: '../components/parameters/LabelSelector.yaml' + - name: fields + in: query + schema: + type: object + description: Fields to include in the response + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlanList.yaml + $ref: '../components/schemas/ServicePlanList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_plans/{guid}: get: summary: Get a service plan description: This endpoint retrieves the service plan by GUID. operationId: getServicePlan tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlan.yaml + $ref: '../components/schemas/ServicePlan.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service plan description: This endpoint updates a service plan with labels and annotations. operationId: updateServicePlan tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: properties: metadata: - $ref: ../components/schemas/Metadata.yaml + $ref: '../components/schemas/Metadata.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlan.yaml + $ref: '../components/schemas/ServicePlan.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a service plan - description: |- - This endpoint deletes a service plan. This is used to remove service plans from the Cloud Foundry database when they - are no longer provided by the service broker. + description: 'This endpoint deletes a service plan. This is used to remove service + plans from the Cloud Foundry database when they + + are no longer provided by the service broker.' operationId: deleteServicePlan tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/service_plans/{guid}/visibility: get: summary: Get a service plan visibility description: This endpoint retrieves the service plan visibility for a given plan. operationId: getServicePlanVisibility tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlanVisibility.yaml + $ref: '../components/schemas/ServicePlanVisibility.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service plan visibility - description: This endpoint updates a service plan visibility. It behaves similar to the [POST service plan visibility endpoint](#apply-a-service-plan-visibility) but this endpoint will replace the existing list of organizations when the service plan is `organization` visible. + description: This endpoint updates a service plan visibility. It behaves similar + to the [POST service plan visibility endpoint](#apply-a-service-plan-visibility) + but this endpoint will replace the existing list of organizations when the service + plan is `organization` visible. operationId: updateServicePlanVisibility tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: - content: - application/json: - schema: - $ref: ../components/schemas/ServicePlanVisibility.yaml + $ref: '../components/requestBodies/ServicePlanVisibilityUpdateRequestBody.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlanVisibility.yaml + $ref: '../components/schemas/ServicePlanVisibility.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' post: summary: Apply a service plan visibility - description: This endpoint applies a service plan visibility. It behaves similar to the [PATCH service plan visibility endpoint](#update-a-service-plan-visibility) but this endpoint will append to the existing list of organizations when the service plan is `organization` visible. + description: This endpoint applies a service plan visibility. It behaves similar + to the [PATCH service plan visibility endpoint](#update-a-service-plan-visibility) + but this endpoint will append to the existing list of organizations when the + service plan is `organization` visible. operationId: applyServicePlanVisibility tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: - content: - application/json: - schema: - $ref: ../components/schemas/ServicePlanVisibility.yaml + $ref: '../components/requestBodies/ServicePlanVisibilityCreateRequestBody.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServicePlanVisibility.yaml + $ref: '../components/schemas/ServicePlanVisibility.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_plans/{guid}/visibility/{organization_guid}: delete: summary: Remove organization from a service plan visibility - description: This endpoint removes an organization from a service plan visibility list of organizations. It is only defined for service plans which are org-restricted. It will fail with a HTTP status code of 422 for any other visibility type (e.g. Public). + description: This endpoint removes an organization from a service plan visibility + list of organizations. It is only defined for service plans which are org-restricted. + It will fail with a HTTP status code of 422 for any other visibility type (e.g. + Public). operationId: removeOrganizationFromServicePlanVisibility tags: - - Service Plans + - Service Plans parameters: - - $ref: ../components/parameters/Guid.yaml - - name: organization_guid - in: path - required: true - schema: - type: string - format: uuid + - $ref: '../components/parameters/Guid.yaml' + - name: organization_guid + in: path + required: true + schema: + type: string + format: uuid responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/ServiceRouteBindings.yaml b/apis/cf/latest/paths/ServiceRouteBindings.yaml index 2d2d5ad..21b90c9 100644 --- a/apis/cf/latest/paths/ServiceRouteBindings.yaml +++ b/apis/cf/latest/paths/ServiceRouteBindings.yaml @@ -1,87 +1,108 @@ /v3/service_route_bindings: get: summary: List service route bindings - description: This endpoint retrieves the service route bindings the user has access to. + description: This endpoint retrieves the service route bindings the user has access + to. operationId: listServiceRouteBindings tags: - - Service Route Bindings + - Service Route Bindings parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: route_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of route guids to filter by - - name: service_instance_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance guids to filter by - - name: service_instance_names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service instance names to filter by - - $ref: ../components/parameters/LabelSelector.yaml - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of service route binding guids to filter by - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - route - - service_instance - description: "Optionally include a list of unique related resources in the response. Valid values are: `route`, `service_instance`" + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: route_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of route guids to filter by + - name: service_instance_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance guids to filter by + - name: service_instance_names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service instance names to filter by + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of service route binding guids to filter by + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - route + - service_instance + description: 'Optionally include a list of unique related resources in the response. + Valid values are: `route`, `service_instance`' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceRouteBindingList.yaml + $ref: '../components/schemas/ServiceRouteBindingList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a service route binding - description: |- - This endpoint creates a new route service binding. The service instance and the route must be in the same space. + description: 'This endpoint creates a new route service binding. The service instance + and the route must be in the same space. - To bind a route to a user-provided service instance, the service instance must have the `route_service_url` property set. - To bind a route to a managed service instance, the service offering must be bindable, and the service offering must have `route_forwarding` set in the `requires` property. + To bind a route to a user-provided service instance, the service instance must + have the `route_service_url` property set. + + + To bind a route to a managed service instance, the service offering must be + bindable, and the service offering must have `route_forwarding` set in the `requires` + property.' operationId: createServiceRouteBinding tags: - - Service Route Bindings + - Service Route Bindings requestBody: content: application/json: schema: - $ref: ../components/schemas/ServiceRouteBinding.yaml + $ref: '../components/schemas/ServiceRouteBindingCreate.yaml' responses: '201': description: Created content: application/json: schema: - $ref: ../components/schemas/ServiceRouteBinding.yaml + $ref: '../components/schemas/ServiceRouteBinding.yaml' links: route: operationId: getRoute @@ -102,29 +123,35 @@ type: string format: uri '400': - $ref: ../components/responses/BadRequest.yaml + $ref: '../components/responses/BadRequest.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' '403': - $ref: ../components/responses/Forbidden.yaml + $ref: '../components/responses/Forbidden.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '500': + $ref: '../components/responses/500.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_route_bindings/{guid}: get: summary: Get a service route binding description: This endpoint retrieves the service route binding by GUID. operationId: getServiceRouteBinding tags: - - Service Route Bindings + - Service Route Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceRouteBinding.yaml + $ref: '../components/schemas/ServiceRouteBinding.yaml' links: route: operationId: getRoute @@ -139,43 +166,60 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a service route binding description: This endpoint updates a service route binding with labels and annotations. operationId: updateServiceRouteBinding tags: - - Service Route Bindings + - Service Route Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: schema: properties: metadata: - $ref: ../components/schemas/Metadata.yaml + $ref: '../components/schemas/Metadata.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceRouteBinding.yaml + $ref: '../components/schemas/ServiceRouteBinding.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a service route binding - description: "This endpoint deletes a service route binding. When deleting route bindings originating from user provided service instances, the delete operation does not require interactions with service brokers, therefore the API will respond synchronously to the delete request. Consequently, deleting route bindings from managed service instances responds with a job which can be used to track the progress of the delete operation." + description: This endpoint deletes a service route binding. When deleting route + bindings originating from user provided service instances, the delete operation + does not require interactions with service brokers, therefore the API will respond + synchronously to the delete request. Consequently, deleting route bindings from + managed service instances responds with a job which can be used to track the + progress of the delete operation. operationId: deleteServiceRouteBinding tags: - - Service Route Bindings + - Service Route Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -190,17 +234,26 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/service_route_bindings/{guid}/parameters: get: summary: Get parameters for a route binding - description: |- - Queries the Service Broker for the parameters associated with this service route binding. The broker catalog must have enabled the `bindings_retrievable` feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) for the value of this feature flag. This endpoint is not available for User-Provided Service Instances. + description: Queries the Service Broker for the parameters associated with this + service route binding. The broker catalog must have enabled the `bindings_retrievable` + feature for the Service Offering. Check the [Service Offering object](#the-service-offering-object) + for the value of this feature flag. This endpoint is not available for User-Provided + Service Instances. operationId: getServiceRouteBindingParameters tags: - - Service Route Bindings + - Service Route Bindings parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -212,3 +265,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/ServiceUsageEvents.yaml b/apis/cf/latest/paths/ServiceUsageEvents.yaml index 9b23021..a6605e9 100644 --- a/apis/cf/latest/paths/ServiceUsageEvents.yaml +++ b/apis/cf/latest/paths/ServiceUsageEvents.yaml @@ -4,77 +4,99 @@ description: Retrieve all service usage events the user has access to. operationId: listServiceUsageEvents tags: - - Service Usage Events + - Service Usage Events parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - $ref: ../components/parameters/CreatedAts.yaml - - name: after_guid - in: query - description: Filters out events before and including the event with the given guid. - schema: + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - name: after_guid + in: query + description: Filters out events before and including the event with the given + guid. + schema: + type: string + - name: guids + in: query + description: Comma-delimited list of usage event guids to filter by. + schema: + type: array + items: + type: string + - name: service_instance_types + in: query + description: Comma-delimited list of service instance types to filter by; valid + values are `managed_service_instance` and `user_provided_service_instance` + schema: + type: array + items: + type: string + enum: + - managed_service_instance + - user_provided_service_instance + - name: service_offering_guids + in: query + description: Comma-delimited list of service offering guids to filter by + schema: + type: array + items: type: string - - name: guids - in: query - description: Comma-delimited list of usage event guids to filter by. - schema: - type: array - items: - type: string - - name: service_instance_types - in: query - description: Comma-delimited list of service instance types to filter by; valid values are `managed_service_instance` and `user_provided_service_instance` - schema: - type: array - items: - type: string - enum: - - managed_service_instance - - user_provided_service_instance - - name: service_offering_guids - in: query - description: Comma-delimited list of service offering guids to filter by - schema: - type: array - items: - type: string responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceUsageEventList.yaml + $ref: '../components/schemas/ServiceUsageEventList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/service_usage_events/{guid}: get: summary: Get a service usage event description: Retrieve a service usage event. operationId: getServiceUsageEvent tags: - - Service Usage Events + - Service Usage Events parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/ServiceUsageEvent.yaml + $ref: '../components/schemas/ServiceUsageEvent.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/service_usage_events/actions/destructively_purge_all_and_reseed: post: summary: Purge and seed service usage events - description: Destroys all existing events. Populates new usage events, one for each existing service instance. All populated events will have a `created_at` value of current time. There is the potential race condition if service instances are currently being created or deleted. The seeded usage events will have the same guid as the service instance. + description: Destroys all existing events. Populates new usage events, one for + each existing service instance. All populated events will have a `created_at` + value of current time. There is the potential race condition if service instances + are currently being created or deleted. The seeded usage events will have the + same guid as the service instance. operationId: purgeAndSeedServiceUsageEvents tags: - - Service Usage Events + - Service Usage Events responses: '200': description: OK @@ -82,3 +104,15 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' diff --git a/apis/cf/latest/paths/Sidecars.yaml b/apis/cf/latest/paths/Sidecars.yaml index 6050bb8..038865b 100644 --- a/apis/cf/latest/paths/Sidecars.yaml +++ b/apis/cf/latest/paths/Sidecars.yaml @@ -4,9 +4,9 @@ description: Get a sidecar. operationId: getSidecar tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -24,19 +24,30 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' patch: summary: Update a sidecar description: Update a sidecar. operationId: updateSidecar tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: - content: - application/json: - schema: - $ref: '../components/schemas/Sidecar.yaml' + $ref: '../components/requestBodies/SidecarUpdateRequestBody.yaml' responses: '200': description: OK @@ -56,14 +67,24 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a sidecar description: Delete a sidecar. operationId: deleteSidecar tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '204': description: No Content @@ -71,15 +92,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/apps/{guid}/sidecars: get: summary: List sidecars for app description: Retrieves all sidecars associated with a app. operationId: listAppSidecars tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -91,14 +118,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' post: summary: Create a sidecar associated with an app description: Create a sidecar associated with an app. operationId: createSidecar tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/SidecarCreate.yaml' responses: @@ -120,15 +149,25 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/processes/{guid}/sidecars: get: summary: List sidecars for process description: Retrieves all sidecars associated with a process. operationId: listProcessSidecars tags: - - Sidecars + - Sidecars parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -140,3 +179,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/SpaceQuotas.yaml b/apis/cf/latest/paths/SpaceQuotas.yaml index e56db71..50069c8 100644 --- a/apis/cf/latest/paths/SpaceQuotas.yaml +++ b/apis/cf/latest/paths/SpaceQuotas.yaml @@ -1,59 +1,74 @@ /v3/space_quotas: get: summary: List space quotas - description: This endpoint lists all space quota resources that the user has permission to view. + description: This endpoint lists all space quota resources that the user has permission + to view. operationId: listSpaceQuotas tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Page.yaml - - $ref: ../components/parameters/PerPage.yaml - - $ref: ../components/parameters/OrderBy.yaml - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space quota guids to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space quota names to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - $ref: ../components/parameters/CreatedAts.yaml - - $ref: ../components/parameters/UpdatedAts.yaml + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space quota guids to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space quota names to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SpaceQuotaList.yaml + $ref: '../components/schemas/SpaceQuotaList.yaml' '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a space quota description: This endpoint creates a new space quota scoped to a specific organization. operationId: createSpaceQuota tags: - - Space Quotas + - Space Quotas requestBody: $ref: ../components/requestBodies/SpaceQuotaCreate.yaml responses: @@ -62,7 +77,7 @@ content: application/json: schema: - $ref: ../components/schemas/SpaceQuota.yaml + $ref: '../components/schemas/SpaceQuota.yaml' links: organization: operationId: getOrganization @@ -70,25 +85,35 @@ guid: $response.body#/relationships/organization/data/guid description: Retrieve the organization for this space quota '401': - $ref: ../components/responses/Unauthorized.yaml + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/space_quotas/{guid}: get: summary: Get a space quota description: Get a space quota operationId: getSpaceQuota tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/SpaceQuota.yaml + $ref: '../components/schemas/SpaceQuota.yaml' links: organization: operationId: getOrganization @@ -98,15 +123,18 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a space quota - description: This endpoint will only update the parameters specified in the request body. Any unspecified parameters will retain their existing values. + description: This endpoint will only update the parameters specified in the request + body. Any unspecified parameters will retain their existing values. operationId: updateSpaceQuota tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: ../components/requestBodies/SpaceQuotaUpdate.yaml responses: @@ -115,7 +143,7 @@ content: application/json: schema: - $ref: ../components/schemas/SpaceQuota.yaml + $ref: '../components/schemas/SpaceQuota.yaml' links: organization: operationId: getOrganization @@ -125,17 +153,27 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' '422': - $ref: ../components/responses/UnprocessableEntity.yaml + $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a space quota description: Space quotas cannot be deleted when applied to any spaces. operationId: deleteSpaceQuota tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Guid.yaml + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -148,87 +186,108 @@ '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/space_quotas/{quota_guid}/relationships/spaces: post: summary: Apply a space quota to a space - description: |- - This endpoint applies a space quota to one or more spaces. + description: 'This endpoint applies a space quota to one or more spaces. + - Only an admin or an org manager in the quota’s parent organization can apply a space quota to a space. + Only an admin or an org manager in the quota’s parent organization can apply + a space quota to a space.' operationId: applySpaceQuota tags: - - Space Quotas + - Space Quotas parameters: - - name: quota_guid - in: path - required: true - schema: - type: string - format: uuid + - name: quota_guid + in: path + required: true + schema: + type: string + format: uuid requestBody: content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' responses: '200': description: OK content: application/json: schema: - $ref: ../components/schemas/RelationshipToMany.yaml + $ref: '../components/schemas/RelationshipToMany.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/space_quotas/{guid}/relationships/spaces/{space_guid}: delete: summary: Remove a space quota from a space - description: |- - This endpoint removes a space quota from a space. + description: 'This endpoint removes a space quota from a space. - Only an admin or an org manager in the quota’s parent organization can remove a space quota from a space. + + Only an admin or an org manager in the quota’s parent organization can remove + a space quota from a space.' operationId: removeSpaceQuotaFromSpace tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Guid.yaml - - name: space_guid - in: path - required: true - schema: - type: string - format: uuid + - $ref: '../components/parameters/Guid.yaml' + - name: space_guid + in: path + required: true + schema: + type: string + format: uuid responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/space_quotas/{guid}/relationships/spaces/{space_guid}/: delete: summary: Remove a space quota from a space (with trailing slash) - description: |- - This endpoint removes a space quota from a space. + description: 'This endpoint removes a space quota from a space. + - Only an admin or an org manager in the quota’s parent organization can remove a space quota from a space. + Only an admin or an org manager in the quota’s parent organization can remove + a space quota from a space.' operationId: removeSpaceQuotaFromSpaceWithSlash tags: - - Space Quotas + - Space Quotas parameters: - - $ref: ../components/parameters/Guid.yaml - - name: space_guid - in: path - required: true - schema: - type: string - format: uuid + - $ref: '../components/parameters/Guid.yaml' + - name: space_guid + in: path + required: true + schema: + type: string + format: uuid responses: '204': description: No Content '401': $ref: '../components/responses/Unauthorized.yaml' '404': - $ref: ../components/responses/NotFound.yaml + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Spaces.yaml b/apis/cf/latest/paths/Spaces.yaml index a4406e9..fd34bf1 100644 --- a/apis/cf/latest/paths/Spaces.yaml +++ b/apis/cf/latest/paths/Spaces.yaml @@ -4,44 +4,44 @@ description: Retrieve all spaces the user has access to. operationId: listSpaces tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space names to filter by - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: include - in: query - schema: - type: array - items: - type: string - enum: - - organization - description: Optionally include a list of unique related resources in the response + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space names to filter by + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - organization + description: Optionally include a list of unique related resources in the response responses: '200': description: OK @@ -51,12 +51,28 @@ $ref: '../components/schemas/SpaceList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '429': + $ref: '../components/responses/TooManyRequests.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a space description: Create a space. operationId: createSpace tags: - - Spaces + - Spaces requestBody: $ref: '../components/requestBodies/SpaceCreateRequestBody.yaml' responses: @@ -79,17 +95,36 @@ description: Retrieve the quota associated with this space '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/spaces/{guid}: get: summary: Get a space description: This endpoint retrieves the specified space object. operationId: getSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' + - name: include + in: query + schema: + type: array + items: + type: string + enum: + - organization + description: Optionally include additional related resources in the response responses: '200': description: OK @@ -112,14 +147,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a space description: Update a space operationId: updateSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/SpaceUpdateRequestBody.yaml' responses: @@ -146,23 +183,26 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a space - description: When a space is deleted, the user roles associated with the space will be deleted. + description: When a space is deleted, the user roles associated with the space + will be deleted. operationId: deleteSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: - '201': - description: Accepted - headers: - Location: - description: URL of the job that is creating the manifest diff - schema: - type: string - format: uri '202': description: Accepted headers: @@ -175,18 +215,30 @@ $ref: '../components/responses/Unauthorized.yaml' '400': $ref: '../components/responses/BadRequest.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/spaces/{guid}/actions/apply_manifest: post: summary: Apply a manifest to a space - description: |- - Apply changes specified in a manifest to the named apps and their underlying processes. The apps must reside in the space. These changes are additive and will not modify any unspecified properties or remove any existing environment variables, app features, routes, or services. + description: 'Apply changes specified in a manifest to the named apps and their + underlying processes. The apps must reside in the space. These changes are additive + and will not modify any unspecified properties or remove any existing environment + variables, app features, routes, or services. + - Apply manifest will only trigger an immediate update for the “instances” property or routing changes. All other properties require an app restart to take effect. + Apply manifest will only trigger an immediate update for the “instances” property + or routing changes. All other properties require an app restart to take effect.' operationId: applyManifestToSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/x-yaml: @@ -205,15 +257,20 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/features: get: summary: List space features - description: This endpoint retrieves the list of features for the specified space. Currently, the only feature on spaces is the SSH feature. + description: This endpoint retrieves the list of features for the specified space. + Currently, the only feature on spaces is the SSH feature. operationId: listSpaceFeatures tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -225,22 +282,24 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/spaces/{guid}/features/{name}: get: summary: Get a space feature description: Get a space feature operationId: getSpaceFeature tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: name - in: path - required: true - schema: - type: string - enum: - - ssh + - $ref: '../components/parameters/Guid.yaml' + - name: name + in: path + required: true + schema: + type: string + enum: + - ssh responses: '200': description: OK @@ -252,21 +311,23 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a space feature description: Update a space feature. operationId: updateSpaceFeature tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: name - in: path - required: true - schema: - type: string - enum: - - ssh + - $ref: '../components/parameters/Guid.yaml' + - name: name + in: path + required: true + schema: + type: string + enum: + - ssh requestBody: content: application/json: @@ -285,18 +346,23 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/manifest_diff: post: summary: Create a manifest diff for a space (experimental) - description: |- - This endpoint returns a JSON representation of the difference between the provided manifest and the current state of a space. + description: 'This endpoint returns a JSON representation of the difference between + the provided manifest and the current state of a space. + - Currently, this endpoint can only diff [version 1](#the-manifest-schema) manifests. + Currently, this endpoint can only diff [version 1](#the-manifest-schema) manifests.' operationId: createManifestDiffForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/x-yaml: @@ -323,15 +389,19 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/relationships/isolation_segment: get: summary: Get assigned isolation segment description: Get assigned isolation segment operationId: getAssignedIsolationSegmentForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -343,17 +413,21 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Manage isolation segment - description: |- - This endpoint assigns an isolation segment to the space. The isolation segment must be [entitled](#entitle-organizations-for-an-isolation-segment) to the space’s parent organization. + description: 'This endpoint assigns an isolation segment to the space. The isolation + segment must be [entitled](#entitle-organizations-for-an-isolation-segment) + to the space’s parent organization. + - Apps will not run in the newly assigned isolation segment until they are restarted. + Apps will not run in the newly assigned isolation segment until they are restarted.' operationId: manageIsolationSegmentForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: @@ -370,22 +444,28 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/routes: delete: summary: Delete unmapped routes for a space - description: Deletes all routes in a space that are not mapped to any applications and not bound to any service instances. + description: Deletes all routes in a space that are not mapped to any applications + and not bound to any service instances. operationId: deleteUnmappedRoutesForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' - - name: unmapped - in: query - required: true - schema: - type: boolean - enum: [true] - description: Filter to only delete unmapped routes + - $ref: '../components/parameters/Guid.yaml' + - name: unmapped + in: query + required: true + schema: + type: boolean + enum: + - true + description: Filter to only delete unmapped routes responses: '202': description: Accepted @@ -399,15 +479,20 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' /v3/spaces/{guid}/running_security_groups: get: summary: List running security groups for a space - description: This endpoint returns security groups that are enabled for running globally or at the space level for the given space. + description: This endpoint returns security groups that are enabled for running + globally or at the space level for the given space. operationId: listRunningSecurityGroupsForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -419,15 +504,18 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/spaces/{guid}/staging_security_groups: get: summary: List staging security groups for a space - description: This endpoint returns security groups that are enabled for staging globally or at the space level for the given space. + description: This endpoint returns security groups that are enabled for staging + globally or at the space level for the given space. operationId: listStagingSecurityGroupsForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -439,15 +527,17 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' /v3/spaces/{guid}/users: get: summary: List users for a space description: Retrieve all users with a role in the specified space. operationId: listUsersForSpace tags: - - Spaces + - Spaces parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -459,3 +549,5 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' diff --git a/apis/cf/latest/paths/Stacks.yaml b/apis/cf/latest/paths/Stacks.yaml index 4602247..64f9230 100644 --- a/apis/cf/latest/paths/Stacks.yaml +++ b/apis/cf/latest/paths/Stacks.yaml @@ -4,21 +4,21 @@ description: Retrieve all stacks. operationId: listStacks tags: - - Stacks + - Stacks parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of stack names to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of stack names to filter by responses: '200': description: OK @@ -28,17 +28,28 @@ $ref: '../components/schemas/StackList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a stack description: Create a stack. operationId: createStack tags: - - Stacks + - Stacks requestBody: - content: - application/json: - schema: - $ref: '../components/schemas/Stack.yaml' + $ref: '../components/requestBodies/StackCreateRequestBody.yaml' responses: '201': description: Created @@ -50,15 +61,25 @@ $ref: '../components/responses/Unauthorized.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/stacks/{guid}: get: summary: Get a stack description: Get a stack. operationId: getStack tags: - - Stacks + - Stacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -70,14 +91,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a stack description: Update a stack. operationId: updateStack tags: - - Stacks + - Stacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: @@ -98,14 +121,24 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a stack description: Delete a stack. operationId: deleteStack tags: - - Stacks + - Stacks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '204': description: No Content @@ -113,21 +146,27 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml' /v3/stacks/{guid}/apps: get: summary: List apps on a stack description: Retrieve all apps using a given stack. operationId: listAppsOnStack tags: - - Stacks + - Stacks parameters: - - $ref: '../components/parameters/Guid.yaml' - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' responses: '200': description: OK @@ -139,3 +178,7 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' diff --git a/apis/cf/latest/paths/Tasks.yaml b/apis/cf/latest/paths/Tasks.yaml index 0de4071..abceb3f 100644 --- a/apis/cf/latest/paths/Tasks.yaml +++ b/apis/cf/latest/paths/Tasks.yaml @@ -1,72 +1,73 @@ /v3/tasks: get: summary: List tasks - description: Retrieve all tasks the user has access to. The `command` field is excluded in the response. + description: Retrieve all tasks the user has access to. The `command` field is + excluded in the response. operationId: listTasks tags: - - Tasks + - Tasks parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of task guids to filter by - - name: names - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of task names to filter by - - name: states - in: query - schema: - type: array - items: - type: string - enum: - - PENDING - - RUNNING - - SUCCEEDED - - CANCELING - - FAILED - description: Comma-delimited list of task states to filter by - - name: app_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of app guids to filter by - - name: space_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of space guids to filter by - - name: organization_guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of organization guids to filter by - - name: sequence_ids - in: query - schema: - type: array - items: - type: integer - description: Comma-delimited list of sequence ids to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of task guids to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of task names to filter by + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - PENDING + - RUNNING + - SUCCEEDED + - CANCELING + - FAILED + description: Comma-delimited list of task states to filter by + - name: app_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of app guids to filter by + - name: space_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of space guids to filter by + - name: organization_guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of organization guids to filter by + - name: sequence_ids + in: query + schema: + type: array + items: + type: integer + description: Comma-delimited list of sequence ids to filter by responses: '200': description: OK @@ -76,20 +77,92 @@ $ref: '../components/schemas/TaskList.yaml' '401': $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/apps/{guid}/tasks: + get: + summary: List tasks for an app + description: Retrieve tasks for an app. + operationId: listAppTasks + tags: + - Tasks + parameters: + - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of task guids to filter by + - name: names + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of task names to filter by + - name: states + in: query + schema: + type: array + items: + type: string + enum: + - PENDING + - RUNNING + - SUCCEEDED + - CANCELING + - FAILED + description: Comma-delimited list of task states to filter by + - name: sequence_ids + in: query + schema: + type: array + items: + type: integer + description: Comma-delimited list of sequence ids to filter by + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/TaskList.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' post: summary: Create a task description: Create a task. operationId: createTask tags: - - Tasks + - Tasks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: - content: - application/json: - schema: - $ref: '../components/schemas/Task.yaml' + $ref: '../components/requestBodies/TaskCreateRequestBody.yaml' responses: '202': description: Accepted @@ -116,15 +189,24 @@ $ref: '../components/responses/Forbidden.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/tasks/{guid}: get: summary: Get a task - description: Retrieve a task. The `command` field may be excluded in the response based on the user’s role. + description: Retrieve a task. The `command` field may be excluded in the response + based on the user’s role. operationId: getTask tags: - - Tasks + - Tasks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -147,14 +229,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a task description: Update a task. operationId: updateTask tags: - - Tasks + - Tasks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: content: application/json: @@ -175,17 +259,31 @@ $ref: '../components/responses/NotFound.yaml' '422': $ref: '../components/responses/UnprocessableEntity.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/tasks/{guid}/actions/cancel: post: summary: Cancel a task - description: Cancels a running task. Canceled tasks will initially be in state `CANCELING` and will move to state `FAILED` once the cancel request has been processed. Cancel requests are idempotent and will be processed according to the state of the task when the request is executed. Canceling a task that is in `SUCCEEDED` or `FAILED` state will return an error. + description: Cancels a running task. Canceled tasks will initially be in state + `CANCELING` and will move to state `FAILED` once the cancel request has been + processed. Cancel requests are idempotent and will be processed according to + the state of the task when the request is executed. Canceling a task that is + in `SUCCEEDED` or `FAILED` state will return an error. operationId: cancelTask tags: - - Tasks + - Tasks parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: - '200': + '202': description: OK content: application/json: @@ -195,3 +293,62 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + put: + summary: Cancel a task (PUT) + description: Cancels a running task using PUT method. Canceled tasks will initially be in state + `CANCELING` and will move to state `FAILED` once the cancel request has been + processed. Cancel requests are idempotent and will be processed according to + the state of the task when the request is executed. Canceling a task that is + in `SUCCEEDED` or `FAILED` state will return an error. + operationId: cancelTaskPut + tags: + - Tasks + parameters: + - $ref: '../components/parameters/Guid.yaml' + responses: + '202': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/Task.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' +/v3/tasks/{guid}/cancel: + put: + summary: DEPRECATED - Cancel a task (short path) + description: DEPRECATED - Use /v3/tasks/{guid}/actions/cancel instead. + operationId: cancelTaskShort + tags: + - Tasks + parameters: + - $ref: '../components/parameters/Guid.yaml' + responses: + '202': + description: OK + content: + application/json: + schema: + $ref: '../components/schemas/Task.yaml' + '401': + $ref: '../components/responses/Unauthorized.yaml' + '404': + $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' diff --git a/apis/cf/latest/paths/Users.yaml b/apis/cf/latest/paths/Users.yaml index 0310d7f..b46f92d 100644 --- a/apis/cf/latest/paths/Users.yaml +++ b/apis/cf/latest/paths/Users.yaml @@ -4,42 +4,42 @@ description: Retrieve all users that the current user can see. operationId: listUsers tags: - - Users + - Users parameters: - - $ref: '../components/parameters/Page.yaml' - - $ref: '../components/parameters/PerPage.yaml' - - $ref: '../components/parameters/OrderBy.yaml' - - $ref: '../components/parameters/CreatedAts.yaml' - - $ref: '../components/parameters/UpdatedAts.yaml' - - $ref: '../components/parameters/LabelSelector.yaml' - - name: guids - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of user guids to filter by - - name: usernames - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of usernames to filter by - - name: origins - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of user origins to filter by - - name: partial_usernames - in: query - schema: - type: array - items: - type: string - description: Comma-delimited list of partial usernames to filter by + - $ref: '../components/parameters/Page.yaml' + - $ref: '../components/parameters/PerPage.yaml' + - $ref: '../components/parameters/OrderBy.yaml' + - $ref: '../components/parameters/CreatedAts.yaml' + - $ref: '../components/parameters/UpdatedAts.yaml' + - $ref: '../components/parameters/LabelSelector.yaml' + - name: guids + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of user guids to filter by + - name: usernames + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of usernames to filter by + - name: origins + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of user origins to filter by + - name: partial_usernames + in: query + schema: + type: array + items: + type: string + description: Comma-delimited list of partial usernames to filter by responses: '200': description: OK @@ -55,17 +55,33 @@ $ref: '../components/responses/Forbidden.yaml' '500': $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '502': + $ref: '../components/responses/BadGateway.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' post: summary: Create a user - description: |- - Creating a user requires one value, a GUID. This creates a user in the Cloud Controller database. + description: 'Creating a user requires one value, a GUID. This creates a user + in the Cloud Controller database. - Generally, the GUID should match the GUID of an already-created user in the UAA database, though this is not required. Creating a user by guid is only permitted by admins. - If CAPI property `cc.allow_user_creation_by_org_manager` is enabled, a UAA user will be automatically created if it does not exist yet. The UAA user will be only created when `username` and `origin` have been provided instead of a guid. Additionally `origin` must be different from `uaa`. Admins and OrgManagers can make use of the UAA user creation. + Generally, the GUID should match the GUID of an already-created user in the + UAA database, though this is not required. Creating a user by guid is only permitted + by admins. + + + If CAPI property `cc.allow_user_creation_by_org_manager` is enabled, a UAA user + will be automatically created if it does not exist yet. The UAA user will be + only created when `username` and `origin` have been provided instead of a guid. + Additionally `origin` must be different from `uaa`. Admins and OrgManagers can + make use of the UAA user creation.' operationId: createUser tags: - - Users + - Users requestBody: $ref: '../components/requestBodies/UserCreate.yaml' responses: @@ -79,15 +95,23 @@ $ref: '../components/responses/Forbidden.yaml' '500': $ref: '../components/responses/500.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '429': + $ref: '../components/responses/TooManyRequests.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' /v3/users/{guid}: get: summary: Get a user description: Retrieve a user. operationId: getUser tags: - - Users + - Users parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '200': description: OK @@ -99,14 +123,16 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' patch: summary: Update a user description: Update a user’s metadata. operationId: updateUser tags: - - Users + - Users parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' requestBody: $ref: '../components/requestBodies/UserUpdate.yaml' responses: @@ -116,14 +142,26 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '400': + $ref: '../components/responses/BadRequest.yaml' + '500': + $ref: '../components/responses/500.yaml' + '503': + $ref: '../components/responses/ServiceUnavailable.yaml' + '409': + $ref: '../components/responses/Conflict.yaml' delete: summary: Delete a user description: All roles associated with a user will be deleted if the user is deleted. operationId: deleteUser tags: - - Users + - Users parameters: - - $ref: '../components/parameters/Guid.yaml' + - $ref: '../components/parameters/Guid.yaml' responses: '202': description: Accepted @@ -137,3 +175,9 @@ $ref: '../components/responses/Unauthorized.yaml' '404': $ref: '../components/responses/NotFound.yaml' + '403': + $ref: '../components/responses/Forbidden.yaml' + '422': + $ref: '../components/responses/UnprocessableEntity.yaml' + '500': + $ref: '../components/responses/500.yaml'