Skip to Content

Versioning

The Open eXecution Protocol defines a versioning mechanism for the protocol messages exchanged between clients and tool servers.

Schema Versioning

The OpenAPI schema is versioned using semantic versioning:

  1. Changes that break backward compatibility MUST be versioned as a new major version.
  2. Changes that add functionality in a backwards-compatible manner MUST be versioned as a new minor version.

Protocol Message Versioning

The $schema field is used in requests and responses to indicate the version of OXP that the client supports. The schema URI MUST be a valid URI.

If the $schema field is not included, the server MUST assume the client supports the latest version of OXP supported by the server.

For example, the following request indicates that the client supports this version (1.0) of OXP:

{ "$schema": "https://github.com/OpenToolCalling/Specification/tree/main/spec/http/1.0/openapi.json" }

Shorthand Versioning

To reduce the size of the $schema field, the client MAY use a shorthand version of the form:

urn:oxp:<major>.<minor>

For example, the following request indicates that the client supports this version (1.0) of OXP:

{ "$schema": "urn:oxp:1.0" }
Last updated on