Skip to content

Latest commit

 

History

History
98 lines (72 loc) · 3.27 KB

README.md

File metadata and controls

98 lines (72 loc) · 3.27 KB

HTTP Bindings

This document defines how to describe HTTP-specific information on AsyncAPI.

Version

Current version is 0.3.0.

Server Binding Object

This object MUST NOT contain any properties. Its name is reserved for future use.

Channel Binding Object

This object MUST NOT contain any properties. Its name is reserved for future use.

Operation Binding Object

Fixed Fields
Field Name Type Description
method string The HTTP method for the request. Its value MUST be one of GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, and TRACE.
query Schema Object | Reference Object A Schema object containing the definitions for each query parameter. This schema MUST be of type object and have a properties key.
bindingVersion string The version of this binding. If omitted, "latest" MUST be assumed.

This object MUST contain only the properties defined above.

Example
channels:
  employees:
    address: /employees
operations:
  employees:
    action: send
    bindings:
      http:
        method: GET
        query:
          type: object
          required:
            - companyId
          properties:
            companyId:
              type: number
              minimum: 1
              description: The Id of the company.
          additionalProperties: false
        bindingVersion: '0.3.0'

Message Binding Object

This object contains information about the message representation in HTTP.

Fixed Fields
Field Name Type Description
headers Schema Object | Reference Object A Schema object containing the definitions for HTTP-specific headers. This schema MUST be of type object and have a properties key.
statusCode number The HTTP response status code according to RFC 9110. statusCode is only relevant for messages referenced by the Operation Reply Object, as it defines the status code for the response. In all other cases, this value can be safely ignored.
bindingVersion string The version of this binding. If omitted, "latest" MUST be assumed.

This object MUST contain only the properties defined above.

channels:
  test:
    address: /test
    messages:
      testMessage:
        bindings:
          http:
            statusCode: 200
            headers:
              type: object
              properties:
                Content-Type:
                  type: string
                  enum: ['application/json']
            bindingVersion: '0.3.0'