json_schema: {
      "$schema": "http://json-schema.org/draft-07/schema",
      "title": "AMQP 0-9-1 Operation Binding Object",
      "description": "This object contains information about the operation representation in AMQP.\nSee https://github.com/asyncapi/bindings/tree/master/amqp#operation-binding-object.",
      "type": "object",
      "properties": {
          "expiration": {
              "description": "TTL (Time-To-Live) for the message. It MUST be greater than or equal to zero. Applies to Publish, Subscribe.",
              "type": "integer",
              "minimum": 0
          },
          "userId": {
              "description": "Identifies the user who has sent the message. Applies to Publish, Subscribe.",
              "type": "string"
          },
          "cc": {
              "description": "The routing keys the message should be routed to at the time of publishing. Applies to Publish, Subscribe.",
              "type": "array",
              "items": {
                  "type": "string"
              }
          },
          "priority": {
              "description": "A priority for the message. Applies to Publish, Subscribe.",
              "type": "integer"
          },
          "deliveryMode": {
              "description": "Delivery mode of the message. Its value MUST be either 1 (transient) or 2 (persistent). Applies to Publish, Subscribe.",
              "type": "integer",
              "oneOf": [
                  {
                      "title": "Transient",
                      "const": 1
                  },
                  {
                      "title": "Persistent",
                      "const": 2
                  }
              ]
          },
          "mandatory": {
              "description": "Whether the message is mandatory or not. Applies to Publish.",
              "type": "boolean"
          },
          "bcc": {
              "description": "Like cc but consumers will not receive this information. Applies to Publish.",
              "type": "array",
              "items": {
                  "type": "string"
              }
          },
          "replyTo": {
              "description": "Name of the queue where the consumer should send the response. Applies to Publish, Subscribe.",
              "type": "string"
          },
          "timestamp": {
              "description": "Whether the message should include a timestamp or not. Applies to Publish, Subscribe.",
              "type": "boolean"
          },
          "ack": {
              "description": "Whether the consumer should ack the message or not. Applies to Subscribe.",
              "type": "boolean"
          },
          "bindingVersion": {
              "description": "The version of this binding. If omitted, \"latest\" MUST be assumed. Applies to Publish, Subscribe.",
              "type": "string",
              "enum": [
                  "0.1.0",
                  "latest"
              ]
          }
      },
      "additionalProperties": false
  }