Project: Open Service Broker API (App Definition and Development / Application Definition & Image Build)
File: release-notes.md

Add binding rotation fields to the spec and guidance on how to use the expiration fields for Remove ambiguity on and clarify 200 status with consistent language for depraction Add context object to the response of fetching a and turn into a non-requirement for service instances Rename context to attributes and update openapi files and the Moved attributes to and returns the metadata on fetch Add guidance for Reconcile openapi and swagger files to match and generate identical clients and servers Add guidance for remembering the state of and operations Add guidance to handle 500 errors from Service Instance Add guidance to handle requests with invalid data Allow Service Brokers to indicate if a Service Instance is still usable after a update or deprovisioning and if an update can be repeated Specify that Platforms SHOULD NOT reuse IDs Allow the platform to supply Service ID and Plan ID as hints when retrieving a or a Add and annotations to the profile document Add support for ETag and If-Modified-Since Clarify the response code when Platform does not provide the required Service Instances can be labelled with defined by the Service Broker Add date and time for bindings 2019-06-11 Added a delay to polling response for and last operations. Added a Service Offering specific . Allow a Service Instance context to be updated and add . Added list of endpoints to . Added mechanism for . Allow brokers to return 200 for no-op . Allow brokers to not return parameters when returning a or . Add plan_updateable field to the . what happens when deleting during a provision/bind request. Restrict Operation strings to 10,000 chartacters in the response body for or a Service Instance, and or a Service Binding. Remove character restrictions on names of , and . Allow empty descriptions in the response body for getting the last operations of , and . Clarify broker behavior expected when and . Clarify broker behavior when a provision request is received or when a binding request is received . Added support to Service Plans. Added . 2018-07-24 Added GET endpoints for fetching a and Added support for asynchronous Service Bindings () and a new endpoint Added clarity around concurrent updates () Added clarity on how Platform's can clean up after a failed provision or bind () Added Opaque Bearer Tokens to the section () Provided guidance for CLI-friendly names () Allow for uppercase characters in Service and Service Plan names () Clarify that extra fields in requests and responses are allowed () Allow an updated `dashboard_url` to be provided when updating a Service Instance () Added an Allow for periods in name fields () Removed the need for Platforms to perform orphan mitigation when receiving an `HTTP 408` response code () Moved the `dashboard_client` field to Added a describing which optional features in the specification are supported by different Platforms Added clarity for returning Service Binding information via the GET endpoints () Added guidance for supported string lengths () Clarified that the `plan_updateable` field affects modifying the Service Plan, not parameters () Clarified which Service Plan ID to use for polling the last operation endpoint after an update () Clarified Platform behaviour when a dashboard URL is not returned () Fixed an incompatible change introduced in

() Added clarity around the state of resources after a failure () Added guidelines 2017-09-19 Added field to services in the catalog that brokers can use to declare the configuration parameters their service accepts for creating a service instance, updating a service instance and creating a service binding. Added field to request body for creating a service binding. Added about using characters outside of the "Unreserved Characters" set in IDs. Added information about objects. `instanceid` and `bindingid` MUST be globally unique non-empty strings. Allow . Added a page including sample service brokers. Define what a is. Add . Add . 2017-06-13 Added `context` field to request body for provisioning a service instance (`PUT /v2/serviceinstances/:instanceid`) and updating a service instance (`PATCH /v2/serviceinstances/:instanceid`). Also added the file describing RECOMMENDED usage patterns for environment-specific extensions and variations. `context` will replace the `organizationguid` and `spaceguid` request fields in future versions of the specification. In the interim, both SHOULD be used to ensure interoperability with old and new implementations. The specification now uses RFC2119 keywords to make it clearer when things are REQUIRED rather than OPTIONAL or RECOMMENDED. Request and response parameters of type string, if present, MUST be a non-empty string. Cleaned up text around status codes in responses, clarifying when they MUST be returned. Added clarity around the `app_guid` request field. Clarified the semantics of `plan_id` and `parameters` fields in the updating a service instance request body. Clarified the default value of the `plan_updateable` field. Clarified when `routeserviceurl` is REQUIRED and when brokers can return extra data in bindings. 2016-11-15 Added field `bindable` to plan objects in /v2/catalog response. This allows services to have both bindable and non-bindable plans. 2016-08-01 Service bind responses now include an optional field called `volumemounts`. Backward incompatible changes to `volumemounts` field in service bind response from experimental 2.9 format to final format. 2016-06-14 `lastoperation` endpoint now supports `serviceid` and `plan_id` as request parameters. A new field `operation` may now be returned by brokers in asynchronous responses for Provision, Update, Deprovision. This field enables brokers to provide an internal identifier for the operation that clients should provide back to the service broker when polling the `last_operation` endpoint. 2015-11-8 In support for Route Services, service broker may now return a `routeserviceurl` in the response for a create binding request. A broker must specify `requires: ["route_forwarding"]` in its catalog endpoint if it supports Route Services. Clients may now send a new field `bindresource` with the bind request, under which the parameters required for the binding are found. This would include, for example, `appguid` for an app binding and `route` for a route binding. For backwards compatibility, `appguid` will remain a top-level key in addition to being included in the `bindresource`. 2015-10-08 Added support for Asynchronous Operations. Brokers may now return a 202 Accepted in response to provision, update, or deprovision requests to indicate the requested operation is in progress. The parameter `accepts_incomplete=true` must be passed by the broker client with requests for provision, update, or deprovision to indicate support for an asynchronous response. The broker can then choose to execute the request synchronously or asynchronously. Added support for querying `lastoperation` status at a new endpoint: `GET /v2/serviceinstances/:guid/last_operation` 2015-07-23 `app_guid` field is no longer guaranteed to be included with create service binding requests New field `service_id` is required with update service instance requests 2015-06-23 Added support for Arbitrary Parameters: service-specific configuration parameters that can be included with provision, update and bind requests 2014-10-31 Added support for broker clients to change the service plan for a specified service instance using new Update Service Instance endpoint 2014-04-23 Added `dashboard_client` field to /v2/catalog to enable