@asyncapi/specs
Version:
AsyncAPI schema versions
130 lines • 2.52 kB
JSON
[{
"components": {
"schemas": {
"Category": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
}
}
},
"Tag": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
}
}
},
"AvroExample": {
"schemaFormat": "application/vnd.apache.avro+json;version=1.9.0",
"schema": {
"$ref": "path/to/user-create.avsc#/UserCreate"
}
}
},
"servers": {
"development": {
"host": "{stage}.in.mycompany.com:{port}",
"description": "RabbitMQ broker",
"protocol": "amqp",
"protocolVersion": "0-9-1",
"variables": {
"stage": {
"$ref": "#/components/serverVariables/stage"
},
"port": {
"$ref": "#/components/serverVariables/port"
}
}
}
},
"serverVariables": {
"stage": {
"default": "demo",
"description": "This value is assigned by the service provider, in this example `mycompany.com`"
},
"port": {
"enum": ["5671", "5672"],
"default": "5672"
}
},
"channels": {
"user/signedup": {
"subscribe": {
"message": {
"$ref": "#/components/messages/userSignUp"
}
}
}
},
"messages": {
"userSignUp": {
"summary": "Action to sign a user up.",
"description": "Multiline description of what this action does.\nHere you have another line.\n",
"tags": [
{
"name": "user"
},
{
"name": "signup"
}
],
"headers": {
"type": "object",
"properties": {
"applicationInstanceId": {
"description": "Unique identifier for a given instance of the publishing application",
"type": "string"
}
}
},
"payload": {
"type": "object",
"properties": {
"user": {
"$ref": "#/components/schemas/userCreate"
},
"signup": {
"$ref": "#/components/schemas/signup"
}
}
}
}
},
"parameters": {
"userId": {
"description": "Id of the user."
}
},
"correlationIds": {
"default": {
"description": "Default Correlation ID",
"location": "$message.header#/correlationId"
}
},
"messageTraits": {
"commonHeaders": {
"headers": {
"type": "object",
"properties": {
"my-app-header": {
"type": "integer",
"minimum": 0,
"maximum": 100
}
}
}
}
}
}
}]