asyncapi3-1.0.0.0: test/golden/examples/reference-examples-streetlights-kafka-asyncapi.yml.json
{"asyncapi":"3.1.0","info":{"title":"Streetlights Kafka API","version":"1.0.0","description":"The Smartylighting Streetlights API allows you to remotely manage the city lights.\n\n### Check out its awesome features:\n\n* Turn a specific streetlight on/off ๐\n* Dim a specific streetlight ๐\n* Receive real-time information about environmental lighting conditions ๐\n","license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"}},"servers":{"mtls-connections":{"host":"test.mykafkacluster.org:28092","protocol":"kafka-secure","description":"Test broker secured with X509","security":[{"$ref":"#/components/securitySchemes/certs"}],"tags":[{"name":"env:test-mtls","description":"This environment is meant for running internal tests through mtls"},{"name":"kind:remote","description":"This server is a remote server. Not exposed by the application"},{"name":"visibility:private","description":"This resource is private and only available to certain users"}]},"scram-connections":{"host":"test.mykafkacluster.org:18092","protocol":"kafka-secure","description":"Test broker secured with scramSha256","security":[{"$ref":"#/components/securitySchemes/saslScram"}],"tags":[{"name":"env:test-scram","description":"This environment is meant for running internal tests through scramSha256"},{"name":"kind:remote","description":"This server is a remote server. Not exposed by the application"},{"name":"visibility:private","description":"This resource is private and only available to certain users"}]}},"defaultContentType":"application/json","channels":{"lightTurnOff":{"address":"smartylighting.streetlights.1.0.action.{streetlightId}.turn.off","messages":{"turnOff":{"$ref":"#/components/messages/turnOnOff"}},"parameters":{"streetlightId":{"$ref":"#/components/parameters/streetlightId"}}},"lightTurnOn":{"address":"smartylighting.streetlights.1.0.action.{streetlightId}.turn.on","messages":{"turnOn":{"$ref":"#/components/messages/turnOnOff"}},"parameters":{"streetlightId":{"$ref":"#/components/parameters/streetlightId"}}},"lightingMeasured":{"address":"smartylighting.streetlights.1.0.event.{streetlightId}.lighting.measured","messages":{"lightMeasured":{"$ref":"#/components/messages/lightMeasured"}},"description":"The topic on which measured values may be produced and consumed.","parameters":{"streetlightId":{"$ref":"#/components/parameters/streetlightId"}}},"lightsDim":{"address":"smartylighting.streetlights.1.0.action.{streetlightId}.dim","messages":{"dimLight":{"$ref":"#/components/messages/dimLight"}},"parameters":{"streetlightId":{"$ref":"#/components/parameters/streetlightId"}}}},"operations":{"dimLight":{"action":"send","channel":{"$ref":"#/channels/lightsDim"},"traits":[{"$ref":"#/components/operationTraits/kafka"}],"messages":[{"$ref":"#/channels/lightsDim/messages/dimLight"}]},"receiveLightMeasurement":{"action":"receive","channel":{"$ref":"#/channels/lightingMeasured"},"summary":"Inform about environmental lighting conditions of a particular streetlight.","traits":[{"$ref":"#/components/operationTraits/kafka"}],"messages":[{"$ref":"#/channels/lightingMeasured/messages/lightMeasured"}]},"turnOff":{"action":"send","channel":{"$ref":"#/channels/lightTurnOff"},"traits":[{"$ref":"#/components/operationTraits/kafka"}],"messages":[{"$ref":"#/channels/lightTurnOff/messages/turnOff"}]},"turnOn":{"action":"send","channel":{"$ref":"#/channels/lightTurnOn"},"traits":[{"$ref":"#/components/operationTraits/kafka"}],"messages":[{"$ref":"#/channels/lightTurnOn/messages/turnOn"}]}},"components":{"schemas":{"dimLightPayload":{"type":"object","properties":{"percentage":{"type":"integer","maximum":100,"minimum":0,"description":"Percentage to which the light should be dimmed to."},"sentAt":{"$ref":"#/components/schemas/sentAt"}}},"lightMeasuredPayload":{"type":"object","properties":{"lumens":{"type":"integer","minimum":0,"description":"Light intensity measured in lumens."},"sentAt":{"$ref":"#/components/schemas/sentAt"}}},"sentAt":{"type":"string","description":"Date and time when the message was sent.","format":"date-time"},"turnOnOffPayload":{"type":"object","properties":{"command":{"type":"string","enum":["on","off"],"description":"Whether to turn on or off the light."},"sentAt":{"$ref":"#/components/schemas/sentAt"}}}},"messages":{"dimLight":{"payload":{"$ref":"#/components/schemas/dimLightPayload"},"name":"dimLight","title":"Dim light","summary":"Command a particular streetlight to dim the lights.","traits":[{"$ref":"#/components/messageTraits/commonHeaders"}]},"lightMeasured":{"payload":{"$ref":"#/components/schemas/lightMeasuredPayload"},"contentType":"application/json","name":"lightMeasured","title":"Light measured","summary":"Inform about environmental lighting conditions of a particular streetlight.","traits":[{"$ref":"#/components/messageTraits/commonHeaders"}]},"turnOnOff":{"payload":{"$ref":"#/components/schemas/turnOnOffPayload"},"name":"turnOnOff","title":"Turn on/off","summary":"Command a particular streetlight to turn the lights on or off.","traits":[{"$ref":"#/components/messageTraits/commonHeaders"}]}},"securitySchemes":{"certs":{"type":"X509","description":"Download the certificate files from service provider"},"saslScram":{"type":"scramSha256","description":"Provide your username and password for SASL/SCRAM authentication"}},"parameters":{"streetlightId":{"description":"The ID of the streetlight."}},"operationTraits":{"kafka":{"bindings":{"kafka":{"clientId":{"enum":["my-app-id"],"type":"string"}}}}},"messageTraits":{"commonHeaders":{"headers":{"type":"object","properties":{"my-app-header":{"type":"integer","maximum":100,"minimum":0}}}}}}}